[英]ngRepeat's animations don't work when using ngInclude on the same element
测试案例: http : //plnkr.co/edit/dsG3gxFomAK8Q15Xfouj?p = preview
上面的测试案例是用ng-repeat
指令两次渲染的数据列表。 一次不使用ng-include
,一次不使用ng-include
。
为ng-repeat
指令支持的所有三个( 输入 , 离开和移动 )动画设置了CSS过渡。 当不使用ng-include
,这三个动画都可以正常工作,但是当使用ng-include
加载列表中每个项目的模板时,只有enter动画可以工作。
我很确定这是angular-animate
的错误,但不确定。 使用ng-repeat
和ng-include
组合时,我可能做错了。 我尝试挖掘angular-animate
源代码并解决问题,但未能成功。 我所想的(希望如此)是, ng-include
指令在ng-repeat
渲染的每个项目的上方都添加了一个comment节点,并且该节点放弃了angular-animate
的工作。 这也是两个实现之间唯一明显的区别。
另请注意,未设置动画时,所有功能都可以正常工作。 但是在使用ng-include
的示例中,不仅动画(用于上下移动项目)变得混乱,而且项目甚至都没有移动。
这是错误吗? 如果是这样,是否有已知的解决方法? 我尝试在github上搜索angular.js的问题,但找不到解决方法(我发现的方法不起作用)。 感谢您对此的任何帮助。
但使用ng-include加载列表中每个项目的模板时,只有enter动画有效。
我实际上在Chrome中出现不一致的行为。 有时,移动动画会起作用。
如果是这样,是否有已知的解决方法?
您可以嵌套ng-repeat-ed / ng-include-ed元素,因此指令位于不同的元素上,因此,无论原因如何,都不应有任何冲突。 http://plnkr.co/edit/dVniIVUaGS8y7wHe7CuT?p=preview中的示例
编辑:修复了plnkr链接。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.