ui-select2 入力に新しい値を追加するたびに、すべての選択が再度コンパイルされます。どうすればそれを防ぐことができますか? ディレクティブを追加したいのですが、それは重くなる可能性があります。
ありがとう!
このプランカーを見て、新しいアイテムを追加して、すべての値が変化していることを確認してください。
私の入力はディレクティブ内にあります:
app.directive('optionChoices', function () {
return {
restrict: 'EA',
scope: {
option: '='
},
template: '<input ui-select2="colorChoices" ng-model="option.selections" style="width:200px">',
controller: ['$scope', '$compile', function ($scope, $compile) {
function Query(query) {
var data = query.term !== ''?
{ results:[{id : query.term, value: '', text : query.term}] } :
{ results:[] };
query.callback (data);
}
function colorFormat(state, container) {
return (new Date().getTime() / 1000);
}
$scope.textChoices = {
query: Query,
initSelection: angular.noop,
tags: []
};
$scope.colorChoices = angular.extend({}, $scope.textChoices, {
formatSelection: colorFormat
});
}]
};
});