Использование ng-параметров для массива, объявленного в объекте
В моем контроллере у меня есть:
$scope.sizes = {
things: [
'one',
'two'
]
}
и в моем HTML у меня есть
<select ng-options="thing for thing in sizes.things"></select>
Полученный комбинированный список не имеет значений. Однако в этом случае:
$scope.things = ['one', 'two'];
<select ng-options="thing for thing in things"></select>
В результате в выпадающем списке отображаются "один", "два". Может кто-нибудь объяснить, почему я не могу получить доступ к массиву внутри объекта $scope?
1 ответ
Решение
Вы скучали по ng-model
атрибут вашего элемента выбора ng-options.
Добавление ng-model="thing"
заставляет это работать...
<select ng-model="thing" ng-options="thing for thing in sizes.things"></select>
Вы можете увидеть рабочий пример здесь.
PS Это на самом деле не работает ни для массива, ни для объекта. Добавление ng-model
Атрибут заставляет оба работать.