2016-11-02 59 views
16
Ben Swift üzerinde yaklaşan bir proje için kullanmak ve tam yerli gidiş edip üzerine bir değerlendirme yapmaya Yerli & Redux Tepki kullanarak uygulama inşa ediyor

Devlet Yönetimi Yerli tepki ve Redux

Arkaplan.

Dan Abramov'un Redux ile ilgili tekniklerinin sağlam bir mühendislik durumu olduğuna inanıyorum. Durumu güncellememek ve görüşün devletin bir fonksiyonu olarak görülmesi harika ve ben de bu fikirle meşgulüm. Biraz karışık geldiğim yerde, karışıma animasyonlar atmak.

Senaryo

Daha karmaşık animasyonlar sadece animasyon yarısına metni güncellemek isterdim. Bir görünümü dışarı solma metni değiştirme ve onu yeniden solma, örneğin, devlet yönetimini gerektirir ve bu Yerel durumu ve Animasyonlu çerçeveyi kullanarak yapmak için yeterince kolay.

Görüntülenecek olan metin durum tarafından çalıştırıldığını varsayalım, durumun uygun bir eylem & redüktör ile değiştirildiği an güncellenir, ancak sunum için bu iki animasyon arasında ihtiyacım var.

Bunun bir örneği, seçilen kaydın adını gösteren bir ekran etiketinin bulunduğu bir listeden bir kayıt seçmektir. İdeal olarak, global mağazayı hemen güncellemek, ancak etiketin üzerinde güzel bir geçiş yapmak istersiniz.

Benim Düşünceler

Bana göre

o animasyonlar başa bileşenlerin iç 'Yerel devlet' kullanmak anlamda bir miktar yapar ve daha genel veri veya mimarlık devlet için ana Redux mağazası. Sorun, bu görüşün küresel devletin bir fonksiyonu olması fikrini kırıyor ve benimle tam olarak aynı şey olduğundan emin değilim. Öte yandan, animasyon dizileri vb. Işlemlerin, yığınlar halinde eylemler, indirgeyiciler ve mağazanın yığılmasıyla yazılması da kendini temiz hissetmiyordur.

soru Yerli 's bebeklik olduğunu ve herkesin Redux kullanıyor, ama senaryo bu tür animasyonlar yönetmenin genel kabul gören bir yolu vardır tepki biliyorum

?

+0

Gerçekten bununla ilgileniyorum, aynı senaryoyu düşünüyordum. – bilby91

+0

Kendime benzer bir soru sordum. Redux'un animasyonları ve geçişleri ele almak için tasarlandığını düşünmüyorum. Her animasyon çerçevesini bir durum olarak düşünürseniz, saniyede en az 60 eylem göndermeniz gerekir. Uygulamanızı daha karmaşık hale getirecek ve çok az fayda olacak. Bu senaryoyu düşünün: Bir sayfada bir düğmeye dokunursanız, farklı bir sayfaya gider. Her sayfadaki durumları tanımlamak mantıklıdır. Ancak, bu gezinme yığını için durumları nasıl tanımlarsınız? Görünüm durumlarının, animasyon miktarı ve mükemmel gereksinimler nedeniyle hiçbir anlam ifade etmediği bazı uygulamalar oluşturdum. –

+0

Evet, animasyonları kontrol etmek için yerel eyaleti kullanma fikrini yaşadım, ancak hala% 100 doğru benimle oturmuyor! –

cevap

8

Sadece 9ish ay boyunca React geliştiriyorum, ve bu yüzden muhtemelen senin gibilerle karşılaştırıldığında bir n00b'yim Matt, ve redux'un harika olduğuna dair çok tereddüt etmeden diyebilirim, ama değiştirmemeli. her koşulda dahili bileşen durumu. Özellikle animasyonlar gibi şeyler için. Bunu kendin sordun, ama yine de soruyorum: neden bunun küresel bir durumda olması gerekiyor? Redux, bir uygulamadaki bileşenlerin, uygulamanız boyunca bir şeyler olduğunda güncellenen durumu almasına izin vermek için var. Bununla birlikte, Redux mağazasında hariç olmak üzere, uygulamanızda hiçbir yerde herhangi bir devlet olmamalıdır.

sen şeyler “Redux yol” yapmak için baskı hissediyorsanız bana

söyledi çok daha zeki bir adam, sizin veya takım arkadaşları çok ciddiye alıyor bir işaret olabilir. Araç kutunuzdaki araçlardan sadece bir tanesi, vahşi bir deney oldu. Yerel durum gayet iyi.

Redux'un sunduğu tradeoff, “şeylerin nasıl değiştiğinden” “ 'un ne olduğunu” çözmek için indirekt eklemektir.Her zaman yapmak için iyi bir şey mi? Hayır. Bu bir tradeoff.

Bunun anlamı nedir? Ne tür bir küfürlü React geliştirici, Redux'un her şey için kullanılmaması gerektiğini söyleyebilir.

Sana kim olduğunu söyleyeceğim. Redux'un yaratıcısı. o yararlıdır ve mantıklı yapar nerede

https://medium.com/@dan_abramov/you-might-not-need-redux-be46360cf367#.flb8fzjr8

TLDR Kullanım Redux. Yapması gereken şey için harika. Ancak bu yuvarlak pimi kare bir deliğe sığdırmaya çalışmayın.

Umarım bu yararlıdır.

+0

Hayır, bunu benden daha uzun yapıyorsun! Söylediklerine katılıyorum ve Dan'in de biraz önce olduğunu gördüm. Bunu kabul etmeye gidiyorum çünkü sahip olduğum tüm konuşmalar arasında bir fikir birliği var gibi görünüyor. –

İlgili konular