angularjs - 在 angular 1.2.x 中动画 ng-repeat ng-move

标签 angularjs ng-animate

我很难获得一个 css 动画以进行有 Angular 的运动 ng-repeat列表。我这里有一个 plunker:http://plnkr.co/edit/KIcTiJ?p=preview

如您所见,ng-enter首次加载 plunker 时会处理动画。但是,我找不到任何方法来触发列表移动的动画。在这个例子中,通过点击箭头,ng-hide 被处理,我希望 ng-move 动画被触发,但我想知道我是否误解了 ng-repeat move 动画是如何触发的。

在任何一种情况下,当我单击该示例中的左右箭头时,有人可以为我建议一种更好的方法来将 Angular 1.2 动画应用于此列表吗?我尝试了生成 ng-repeat 的替代方法(我可以使用 Angular 过滤器而不是 ng-hide),并且我尝试了不同的 css 转换,但我似乎无法得到任何工作。关于如何进步,这里的任何建议将不胜感激。

对不起,如果这个问题看起来像重复,但我在stackoverflow上查看了类似的问题,但我能找到的唯一其他答案是针对较旧的 Angular 动画框架,或建议的自定义javascript动画,我希望避免这种情况。

最佳答案

ng-repeat如果集合已更改,则动画工作。您可以使用 $filter以反射(reflect)您在集合中的更改。

<li ng-class="{'text-danger': item == f}" ng-repeat="item in items| filter: filteredData" class="animate-repeat">
  <span>{{item}}</span>
</li>

这里filteredData是执行过滤器逻辑的 Controller 功能。 (您也可以编写自定义过滤器)
  $scope.filteredData = function(item) {
    return (Math.abs($scope.f - item) < 2);
  }

检查更新 Plunker动画是如何工作的。

关于angularjs - 在 angular 1.2.x 中动画 ng-repeat ng-move,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21513454/

相关文章:

javascript - 如何根据使用AngularJS中的if条件的值加载图像

angularjs - Angular/CSS - 动态添加新元素时动画移动内容

angularjs - 我可以防止/延迟更新模型时AngularJS $ digest的发生吗

javascript - 从带有换行符的文本区域到数据库的数据

javascript - 未捕获的对象错误 : can't inject ngAnimate

angularjs 状态变化动画滑入滑出

angularjs - Angular ng-view 动画转换

javascript - 在 Angular 中存储和使用定期更新的数据的最佳方式

javascript - 如何为 Angular 中动态创建的复选框定义模型