2016-07-07 2 views
2

Я извлекаю неупорядоченный список и привязываю к выпадающему списку здесь, но при создании экземпляра я хочу иметь возможность выбрать 0-й элемент в раскрывающемся списке. ng-init="selectedTreatment=treatments[0]" не работает, поскольку список переупорядочен в представлении.Angular Drop Down, Select by Index

<select ng-model="selectedTreatment" 
     ng-options="option.TreatmentName for option in (treatments | orderBy : 'TreatmentName')"> 
</select> 

Есть ли Угловой способ сделать это?

ответ

0

Одним из решений было упорядочить данные в контроллере, так же, как приказано в представлении. Затем в контроллере я ввел $filter в контроллер и сделал:

$scope.selectedTreatment = $filter('orderBy')($scope.treatments, 'TreatmentName')[0]; 

Это позволило мне использовать фильтр OrderBy в контроллере. Это устранило мою проблему, но похоже, что она не предлагает полный SOC. Способ сделать это аккуратно в представлении не представляется возможным.

0

В контроллере тура установки выберите нг-модель

$scope.selectedTreatment = treatments[0].TreatmentName 
+1

Поскольку данные переупорядочены с использованием фильтра 'orderBy' на представлении. 0-й элемент в данных не является 0-м элементом в раскрывающемся списке. Так что это не сработает. – gunwin