Bu kadar basit bir şey kolayca başarılmalı, yine de saçlarımı ne kadar karmaşık olduğu konusunda çekiyorum.
Tek yapmak istediğim, bir React bileşeninin montajını ve sökülmesini canlandırmak, hepsi bu. Şimdiye kadar denediklerim ve her çözümün neden işe yaramayacağı aşağıda açıklanmıştır:
ReactCSSTransitionGroup
- CSS sınıflarını hiç kullanmıyorum, hepsi JS stilleri, yani bu işe yaramayacak.ReactTransitionGroup
- Bu düşük seviyeli API harikadır, ancak animasyon tamamlandığında bir geri arama kullanmanızı gerektirir, bu nedenle sadece CSS geçişlerini kullanmak burada çalışmaz. Her zaman bir sonraki noktaya götüren animasyon kitaplıkları vardır:- GreenSock - Lisanslama, ticari kullanım IMO'su için çok kısıtlayıcıdır.
- React Motion - Bu harika görünüyor, ancak
TransitionMotion
son derece kafa karıştırıcı ve ihtiyacım olan şey için fazlasıyla karmaşık. - Tabii ki, Materyal UI'nin yaptığı gibi, öğelerin işlendiği ancak gizli kaldığı (
left: -10000px
) hileler yapabilirim, ancak bu yola gitmeyi tercih etmem. Bunu hacky düşünün ve ben istiyorum onlar temizlemek ve DOM doldurmasını değildir bu nedenle bağlantısını kesmesine benim bileşenleri.
Uygulaması kolay bir şey istiyorum . Montajda, bir dizi stili canlandırın; unmount'ta, aynı (veya başka) stil kümesini canlandırın. Bitti. Aynı zamanda birden çok platformda yüksek performanslı olması gerekir.
Burada bir tuğla duvara çarptım. Bir şeyi kaçırıyorsam ve bunu yapmanın kolay bir yolu varsa bana bildirin.