我有一个 Angular 应用程序,我将一个空数组传递给Angular-UI Bootstrap Modal。取决于用户的选择,它可能填充或不填充项目,最多 1000 个对象。所有这些我都显示在一个列表中ng-repeat
。列表中的所有项目都是预先生成的,因此我无法异步检索它们,例如使用smart-table 之类的插件。当用户按下确定按钮时,所有生成的值都会返回到controller
它被调用的位置。从技术上讲,所有这些都已经存在,因为我通过$scope.items
引用传递:
resolve: {
items: function () {
return $scope.items;
}
}
但是当我按下取消$scope.items.length=0;
按钮时,我会通过调用我需要一段时间的问题来擦除数组中的所有项目。在我下面的 plunker 示例中,它几乎不引人注意但很明显,但在我的实际应用中,它更加明显和不可接受。
我猜这是由于Angular的双向绑定,清理所有观察者需要一些时间,但我不知道如何解决这个问题,如果可以解决的话。
我在 plunker 的 MCVE:http://plnkr.co/edit/JwanDxBzh3a7ilEX58z8?p= preview
更新:尝试使用一次性 binging,plunker 在这里:http ://plnkr.co/edit/PjzHRYiuXFHE1M1Pap6U?p=preview
<li ng-repeat="item in items">
<a href="#"> {{ ::item | date:'yyyy-MM-dd' }}</a>
</li>
如此处所述:https ://stackoverflow.com/a/18791503/947111它没有帮助。