在AngularJS ng中动画ng-move重复动画制作错误的项目

时间:2013-12-19 21:03:34

标签: angularjs angularjs-ng-repeat ng-animate

在ng-repeat中动画ng-move时,我有点不知所措。例如,如果我将数组项从3移动到7,则项4-7会向上移动并且它们会生成动画。然而,我从3移动并放置在位置7的实际项目没有。这是一个了解我的问题的傻瓜。

http://plnkr.co/edit/4yRkLWbsU57YxrYOrWUQ?p=preview

然而,将项目7移动到3可以正常工作,为单个移动的项目设置动画,而不是按下的项目。

这对于向用户显示移动内容并不是非常有用。应该如何正确地为ng-move制作动画?

2 个答案:

答案 0 :(得分:1)

@tasseKat有一个很好的答案,它解释了你观察到的行为:https://stackoverflow.com/a/27616435/1652643

然而,他的解决方案并不像你希望的那样简单......但到目前为止我还没有找到更好的方法。

答案 1 :(得分:0)

正确的语法是

arrayVar.splice(to, 0, arrayVar.splice(from, 1));

要移除并返回数组i的索引arr处的元素,请使用arr.splice(i, 1)