是否有可能在没有为所有ng-if跨应用程序添加任何类的情况下使用ngAnimation?

时间:2017-01-03 10:13:32

标签: angularjs animation

我已经为此提到了很多答案,但问题是我们已经在我们的网络应用程序中写了很多东西。现在我想为ng-if添加动画,而不是去所有ng-if divs添加类。

那么最好的做法是什么。

1 个答案:

答案 0 :(得分:1)

像往常一样为CSS中ng-if的所有元素定义所需的动画。

例如:

.my-animation.ng-enter,
.my-animation.ng-leave {
  transition: all cubic-bezier(0.250, 0.460, 0.450, 0.940) 0.5s;
}

.my-animation.ng-enter,
.my-animation.ng-leave.ng-leave-active {
  opacity: 0;
}

.my-animation.ng-leave,
.my-animation.ng-enter.ng-enter-active {
  opacity: 1;
}

添加一个指令,将my-animation类添加到ng-if的所有元素:

app.directive('ngIf', function() {

  return {
    compile: function(tElement) {

      tElement.addClass('my-animation');
    }
  }
});

演示: http://plnkr.co/edit/p88E3VxVdPw0WWpbfJXG?p=preview