AngularJS:不要在DOM更改上运行ng-repeat

时间:2017-01-23 08:43:08

标签: javascript jquery angularjs dom

我遇到了以下问题:

我有一个使用AngularJS 1.6.1的SPA并使用ng-view来实现一些视图。我有一个视图,我添加" UniteGallery"在ng-repeat中使用我自己的指令。因此unitegallery动态加载15次。到目前为止效果很好。

但是,我有一个移动菜单,我通过点击按钮来切换。这也很有效。我只是根据菜单是打开还是隐藏为ng-class设置菜单div的类。

当然,这是改变我的主意。我的问题是,通过更改dom,再次运行ng-repeat。这会导致闪烁和性能问题。

有没有办法在没有重复运行ng-repeat的情况下更改dom?

2 个答案:

答案 0 :(得分:3)

如果您不想重新加载ng-repeat绑定(使用相应的dom重新加载),您可以使用一次性绑定

只需使用

  

::

在绑定之前,就像这样:

  

ng-repeat =“照片在:: gallery”

这将使$ scope.gallery仅绑定到视图

https://docs.angularjs.org/guide/expression

答案 1 :(得分:1)

除了Daniel Santiago的回答:如果你想隐藏"闪烁"在您的问题中提到的,您应该使用ng-cloak

更多关于ngCloak