angularjs中的更改感知列表

时间:2016-03-22 06:39:02

标签: javascript angularjs list

我正在对现有的angularjs代码做一些工作,我有类似的东西:我在客户端有一个对象列表,我通过put请求传输到服务器端。 / p>

现有代码只需获取$scope中的对象列表,并将其放在json中。

我想实现一种机制,其中只发送自某个事件以来已经更改的对象。

我可以硬编码并保存另一个对象列表并在提交更改时将其清除,但我希望更清洁 - 例如,更改感知列表,

然后,我可以做某种list.changedObjects

我似乎无法从基础研究中找到类似的东西,所以我希望你们能对它有所了解。

2 个答案:

答案 0 :(得分:0)

我觉得这是Observer pattern的用例。 https://github.com/melanke/Watch.JS有一个lib / example来观察javascript对象的变化。然后,您可以在Angular中触发事件,以便相应地完成工作 http://jsfiddle.net/2zT4C/23/

答案 1 :(得分:0)

$ watch有助于监听$ scope更改

然后,AngularJS可以根据watch函数上次返回的值检查返回的值。这样,AngularJS可以确定值是否已更改。

$scope.$watch('list', $scope.sendNewList, true);

如果对象的新值不等于对象的旧值,即如果它已被更改,它将更新innerHtml。

详细信息请查看 - $watch()$watch

AngularJS watch array of objects for data change