2016-07-12 13 views
3

ui-selectの値を重複して選択リスト項目に挿入することはできません。ユーザーが値を複数回入力できるユースケースが1つあります。ユーザーが入力した値はドロップリストから選択されません。ui-selectコンポーネントで重複する値を許可する

ui-select指令でこれを達成することは可能ですか?

<ui-select multiple tagging tagging-label="(custom 'new' label)" ng-model="ctrl.multipleDemo.colors" theme="bootstrap" sortable="true" ng-disabled="ctrl.disabled" style="width: 300px;" title="Choose a color"> 
    <ui-select-match placeholder="Select colors...">{{$item}}</ui-select-match> 
    <ui-select-choices repeat="color in ctrl.availableColors | filter:$select.search track by $index"> 
    {{color}} 
    </ui-select-choices> 
</ui-select> 

は、ここでのサンプルは、この中に「」を選択し、UIのように手動で値を入力すること

ユーザーhttp://plnkr.co/edit/s407ooeoeFh2dH9DynZy?p=previewをplunkです。 'a'を一度入力すると、ng-repeatは重複した値を許可しないため、ユーザーは再び 'a'を入力しないことがあります。私は配列インデックスを取ることができるように$ indexでトラックを使用しようとしましたが、同じ値を2回入力することはできません。

答えて

0

ui-selectは現在この機能をサポートしていません。私はrequested this feature昨日、残念ながら拒否されました。自分のフォーク(see commit)で実装し、それを問題にリンクしました。

この機能がまだ必要な場合は、feat-duplicates-allowedブランチに切り替え、gulpを使用してコードを構築すると、私のレポをフォーク/ダウンロードすることができます。有効にするには、ui-select要素にduplicates-allowed="true"を追加するだけです。

ライブラリに役立つと思われる場合は、UIの選択問題に親切やコメントを追加してください。

免責事項:この機能の基本的なケースをユニットテストしましたが、私のユースケースでは機能しますが、エッジケースの広範なテストは行っていません。

関連する問題