Angularjs ng-model внутри ng-repeat через (key, val), не обновляющий

Вот моя не работающая демонстрация

<section ng-repeat="t in test">
  <div ng-repeat="(key,value) in t">
    <div>{{key}}</div>
   <input type="text" ng-model="value"/>
  </div>
</section>

Модель остается прежней. Как синхронизировать? Обратите внимание, что важна структура данных.

Ответы

Ответ 1

Связывание ng-model будет оценивать его выражение в текущей области. Поскольку ng-repeat создает дочернюю область, это означает, что ng-model будет искать свойство с именем value в области дочерних объектов. В вашем примере мы ожидаем, что он будет искать свойство val в области родительский, который будет псевдонимом t.

Это по дизайну и может быть обойдено в вашем случае, ссылаясь на родительскую область t в выражении.

Рабочая демонстрация

Код (обратите внимание, что привязка к элементу ввода изменилась):

<section ng-repeat="t in test">
  <div ng-repeat="(key,value) in t">
    <div>{{key}}</div>
   <input type="text" ng-model="t[key]"/>
  </div>
</section>

Как вы используете бета-версию Angular 1.3, это может быть ошибка.