我正在尝试ng-repeat
使用包含数组内容的输入元素更新显示在页面上的 $scope 对象的数组。可以在此处找到 plunker 示例:Plunker 演示(基本,我的问题的精简示例)
我定义了以下设置对象:
$scope.settings = {
list: ['list item one', 'list item two', 'list item three']
};
我代表页面上的数据,如下所示:
<ul>
<li ng-repeat="item in settings.list">
<input type="text"
value="{{item}}"
ng-model="singleItem"
ng-change="settings.list[$index] = singleItem" />
<a href="javascript:void(0)">delete</a>
</li>
</ul>
我的目标是最初<input>
用内容填充字段,$scope.settings.list
并且每当更改项目时更新数组,但我还没有弄清楚如何在视图中。在输入中省略ng-model
andng-change
会正确呈现文本框中的输入值,但是在进行更改时不会修改数组。
旁注:在 Plunker 示例中,我有$watch
设置对象。在我的实际代码中,这用于使用$cookies
模块更新“设置 cookie” 。示例中省略了 Cookie,但出于调试目的,我将手表留在了里面。