0

我在某些地方使用 ngAnimate,但它接管了我所有 ng-class 元素的动画。我已经为不需要 ngAnimate 接管的各种元素编写了大量动画代码。他们添加的课程似乎真的把事情搞砸了。无论如何要排除这些元素?

这是我要排除的元素:

<div ng-class="myclass"></div>

ngAnimate 添加了类似的类

$scope.myclass = 'move'

<div class="move-add" ng-class="myclass"></div>
4

1 回答 1

1

IRC 上的 jaawerth 帮助了我。他/她将我引导至此链接:

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

并建议我写这个指令:

.directive('noAnimate', ['$animate',
  function($animate) {
    return {
      restrict: 'A',
      link: function(scope, element, attrs) {
        $animate.enabled(false, element)
        scope.$watch(function () {
          $animate.enabled(false, element)
        })
      }
    };
  }
])

这解决了这个问题。

于 2014-05-27T03:05:52.470 回答