我正在使用ngAnimate进行一些动画制作。但是,如果我在我的应用程序中包含该模块,那么所有ng-if
也会被延迟,我显然不希望这样。
我将此模块包含为anguular.module('myApp', ['ngAnimate']);
,然后在我的某个工厂中的某处使用$animate.enter(...)
。
然后在另一个指令中,我有ng-if="something"
和每次something
更改,我可以在删除div之前看到延迟。我检查了DOM,我可以清楚地看到添加了ng-animate ng-leave
个类。当我删除ngAnimate
模块时,一切正常。
也没有.ng-leave
或.ng-enter
全局行动(即我将它们用作.myDiv.ng-leave
等)
有人可以启发我吗?
修改
好吧,所以我想我可以使用$animate.enabled()
在特定的控制器上关闭它。所以现在,在我的指令控制器中,我只是这样做:
controller: function($scope, $element) {
$animate.enabled(false, $element);
}
但是,如果我需要在$animate
内的特定内容上使用$element
,该怎么办?为什么$animate
在没有我特别询问的情况下,在每次该死的过渡中变得全球活跃?