ng如果初始动画不使用自定义指令

ng-if initial animation not working with a custom directive

本文关键字:自定义 指令 动画 如果 ng      更新时间:2024-01-05

如果ng-if和自定义指令放在同一个DOM元素上,则初始动画不起作用。

<div ng-if="value" myDirective class="fadeMe"></div>

这是一个plunkr,清楚地表明了问题所在。请注意,只有初始显示淡入淡出会失败。

更多详细信息:我猜这与两个指令的优先级有关(首先编译ngif)。

我试图为自定义指令设置更高的优先级,但遇到了更多问题,例如如果自定义指令中不必要的观察者继续观察值,则自定义指令的子作用域不会被ng破坏。

似乎与此问题有关:

https://github.com/angular/angular.js/issues/14074

如果在指令中使用内联模板而不是templateURL,它就会开始工作。

类的Angular指令"restrict-type"中的数据绑定似乎存在时间问题。

restrict: 'C'

因此,快速修复使用

restrict: 'A'

http://plnkr.co/edit/2iB9jvpGSMi3IwelicXT