刷新 ng-repeat 即使什么都没有改变

Refresh ng-repeat even nothing has changed

我在 ng-repeat 中进行了一些 dom 操作。现在我想重置我的 DOM 以匹配 ng-repeat 正在循环的模型。如何强制 AngularJS 重绘 ng-repeat 内容。

应用显然不起作用,因为没有对模型进行任何更改。

ng-repeat 的整体思路是遵循模型。如果你想改变内容,你真的应该改变模型。至于 dom 操作,您应该在 angular 组件或指令中执行这些操作,并再次使其遵循模型。

如果你不这样做,你可能根本就不用 Angular。

如果您粘贴一些代码,那就太好了,但是无论如何,假设我们有这个:

$scope.rows = [1,2,3];

<div ng-repeat="row in rows">
   {{row}}
</div>

为了使用 ng-repeat 重新绘制相同的数据,您需要以某种方式更改范围。您可以在 DOM 操作

之后尝试此操作
$scope.rows = angular.copy($scope.rows);

其实你不需要做任何特殊的事情来重新绑定angular js中的DOM。 Angular JS 支持 two way data binding,因此当您的模型发生变化时,DOM 对象会自动重新绑定修改后的内容。所以你所要做的就是重新绑定你的控制器变量,它会自动更新 DOM.