5

ブートストラップ モーダル ウィンドウで ~1500 項目のリストでangular-ui-selectを使用します。

ユーザーが行うアクションごとに 2 秒の遅延があります。「minimum-input-length」を使用してパフォーマンスを改善しようとしましたが、フィルターが機能しません。

Plunkr の例: https://plnkr.co/edit/H0kbeR4kHfZFjsBnpjBC?p=preview

私の HTML:

<ui-select multiple sortable="true" ng-model="vm.selected" theme="select2" style="width: 100%;">
              <ui-select-match placeholder="Select...">{{ $item.name }}</ui-select-match>
              <ui-select-choices repeat="item in vm.items | filter: $select.search" minimum-input-length="2">
                <div ng-bind-html="item.name | highlight: $select.search"></div>
              </ui-select-choices>
            </ui-select>
  1. パフォーマンスを向上させる方法を知っている人はいますか?
  2. 最小文字数フィルターを適用するには?

    ありがとう。

4

3 に答える 3

12

LimitTo を使用して解決し、検索の長さを確認しました。

limitTo: ($select.search.length <= 2) ? 0 : undefined"

完全なコード:

<ui-select-choices 
  repeat="item in ctrl.items | filter: $select.search | limitTo: ($select.search.length <= 2) ? 0 : undefined">
于 2016-07-12T14:06:10.450 に答える