Анимации не включаются ng-show/hide
редактировать
Добавлены некоторые классы, но я все еще что-то упускаю
$duration = .3s
.fade
transition $duration linear all
&.ng-enter
opacity 0
transition-delay $duration
&-active
opacity 1
&-hide
opacity 1
&.ng-hide
opacity 0
transition-delay $duration
&.ng-leave, &.ng-hide-remove
opacity 1
&-active
opacity 0
Это работает сейчас, но не правильно
Допустим, у меня есть эта простая анимация
animation.stylus
$duration = .3s
.fade
&.ng-enter
transition $duration linear all
opacity 0
transition-delay $duration
&-active
opacity 1
&.ng-leave
transition $duration linear all
opacity 1
&-active
opacity 0
animation.css
.fade.ng-enter {
-webkit-transition: 0.3s linear all;
transition: 0.3s linear all;
opacity: 0;
-webkit-transition-delay: 0.3s;
transition-delay: 0.3s;
}
.fade.ng-enter-active {
opacity: 1;
}
.fade.ng-leave {
-webkit-transition: 0.3s linear all;
transition: 0.3s linear all;
opacity: 1;
}
.fade.ng-leave-active {
opacity: 0;
}
Что мне не хватает? Потому что это работает в ng-view, но не в ng-show/hide.
1 ответ
Решение
Для работы ng-show (и ng-hide) нужны дополнительные явные правила css (или js), вот они:
.fade
&.ng-hide-add
opacity 1
&-active
opacity 0
display none
&.ng-hide-remove
opacity 0
&-active
opacity 1