Подтвердить что ты не робот

Angular select не работает без ng-model

Кто-нибудь знает, почему в Angular селектор выбора не работает без ng-модели?

<select ng-model="bla_bla" ng-options="obj.value as obj.key for obj in languages"/>
<select ng-options="obj.value as obj.key for obj in languages"/>

Первая строка кода выше будет работать, а вторая не будет работать. Почему???

Спасибо!

4b9b3361

Ответ 1

Использование тега select в приложении Angular генерирует директиву ng-select, которая является элементом HTML select плюс Angular привязки данных. Если посмотреть в источнике Angular для этой директивы select, вот первые несколько строк из метода link:

link: function(scope, element, attr, ctrls) {
    // if ngModel is not defined, we don't need to do anything
    if (!ctrls[1]) return;
    ...

Таким образом, он фактически встроен в фреймворк, чтобы прервать привязку directive, если ngModel не определен, и поэтому привязка не имеет места.