Javascript ngRepeat不';t在简单数组上完全重新加载DOM

Javascript ngRepeat不';t在简单数组上完全重新加载DOM,javascript,angularjs,Javascript,Angularjs,我使用的是如下所示的简单数字数组和ng repeat: n = [1,2,3,4,5,6] 问题是,当我为eg更改此数组时: n=[1,2,3] 它不会完全重新加载DOM,而是删除与数组4,5,6相关的最后3个div元素。是否有任何方法可以在每次我更改数组时强制ng repeat重新加载DOM。是否尝试将数组更改为$apply调用?,类似于: $scope.$apply(function() { n = [1, 2, 3]; }); 为什么要重新加载dom?这实际上是一个特性,而不

我使用的是如下所示的简单数字数组和
ng repeat

n = [1,2,3,4,5,6]
问题是,当我为eg更改此数组时:

n=[1,2,3]

它不会完全重新加载DOM,而是删除与数组
4,5,6
相关的最后3个
div
元素。是否有任何方法可以在每次我更改数组时强制
ng repeat
重新加载DOM。

是否尝试将数组更改为$apply调用?,类似于:

$scope.$apply(function() {
    n = [1, 2, 3];
});

为什么要重新加载dom?这实际上是一个特性,而不是一个bug。这就是为什么AngularJS在MV*上如此酷、数据绑定。但是,这种行为到底有什么问题?实际上,每次更改阵列时,我都使用不同的布局。否则ngRepeat不会更新与前3个数组值相关的
div
元素。@codelearner,我建议您添加有关更改布局对象的更多详细信息。这也不起作用,因为根据ngRepeat文档,如果您以后重新加载数据,ngRepeat将不必为已经呈现的项目重建DOM元素,即使集合中的JavaScript对象已被新对象替换。本文将帮助您:@didando8a感谢链接。但我使用的是简单的数字数组,而不是对象数组。