Próbuję utworzyć sekwencję animacji, łącząc wywołania metody addClass/removeClass.Sekwencja animacji przy użyciu metody AngularJS addClass/removeClass
Po zakończeniu metody animacji wywoływana jest metoda "removeClass" w celu usunięcia animacji i uruchomienia nowej. Ale z jakiegoś powodu nic się nie dzieje. Próbuję dowiedzieć się, dlaczego to nie działa? Dlaczego klasa nie została usunięta?
$animate.addClass(element, 'fadeInDown').then(function() {
$animate.removeClass(element, 'fadeInDown'); // why is it not working?
$animate.addClass(element, 'fadeOutDown');
});
Pełna wersja można znaleźć tutaj
http://plnkr.co/edit/EFybfU4jcZoT3S7jCpM8?p=preview
dzięki rekomendacji dla Ciebie, myślę, że to byłoby dobre praktyki – linksta
To działa na mnie przez samego problemu, jedno pytanie, dlaczego umieścić $ zastosować połączenia wewnątrz zegarem? to działa na pewno, a jeśli zrobię $ apply without timer wszystkie animacje zrywają się i nie działają, myślę, że wezwanie $ digest szaleje, ale nie ma w środku timera .... dlaczego: -O – Kalamarico
Z perspektywy czasu powinieneś zamiast tego użyj [$ timeout] (https://docs.angularjs.org/api/ng/service/$timeout). setTimeout wychodzi poza granice (więc zmiany nie są wykrywane przez kątowe) i stosuje ponownie je przywraca –