每次加载路径时,Angular会复制ng-view

时间:2014-11-06 15:52:48

标签: angularjs

AngularJS每次加载路径时都会创建一个新的ng-view,然后销毁之前的ng-view,这是正常的吗?这只是一小部分时间,但我可以看到我的应用程序上的两个视图,并且收集元素top的一些指令也注意到行为(似乎编译是在原始ng-view从DOM中删除之前完成的)

有人注意到这种行为吗?

1 个答案:

答案 0 :(得分:3)

是的,这是正常的,这允许您在视图被替换时进行转换。

来自 official documentation of ngView

  

输入 - 动画用于将新内容带入浏览器。离开    - 动画用于动画现有内容。

     

输入和离开动画同时发生。

实际上ngView并不是唯一表现得像这样的指令,例如ngRepeat表现完全相同。

如果你想确保你的观点不重叠,你可以试试这个。

ng-view的元素中添加一个类,以便您可以轻松地从css中定位它,如下所示:

<div ng-view class="your-view"></div>

然后在你的css中这样做:

.your-view.ng-leave { display:none; }