Redux kullanırken this.setState () kullanmalı mısınız?


111

this.setState()Redux kullanırken hiç kullanmalı mısınız? Yoksa her zaman eylemler göndermeli ve sahne donanımlarına güvenmeli misiniz?


1
Durum ile bazı bileşenlere sahip olmanın yanlış bir tarafı yoktur.
zerkms

3
Bu tamamen devletin nerede kullanıldığına bağlıdır. Redux mağazalarını küresel olarak düşünün. Küresel olması gerekmeyen her şey bir bileşene ve onun çocuklarına özel kalabilir.
azium

Yanıtlar:


139

Açık kullanımları, setStateyerel görüntü durumuna sahip olan, ancak genel uygulama ile ilgili olmayan UI bileşenleri içindir. Örneğin, belirli bir açılır menünün aktif olarak görüntülenip görüntülenmediğini temsil eden bir boole değerinin genel durumda olması gerekmez, bu nedenle menü bileşeninin durumu tarafından daha rahat bir şekilde kontrol edilir.

Diğer örnekler, bir hiyerarşinin bir akordeon görüntüsündeki satırların daraltma / genişletme durumunu içerebilir. Veya muhtemelen sekme gezinmesinde seçili olan sekme. Ancak bu örneklerin her ikisinde de kullanıcı arabirimi durumunu global olarak işlemeyi tercih edebilirsiniz. Örneğin, tarayıcı depolamasında genişletme / daraltma durumunu sürdürmek ve böylece sayfa yenilemeyle korunmasını istiyorsanız bu gerekli olacaktır.

Pratikte, bu tür UI öğelerini yerel durumla uygulamak ve gerektiğinde bunları küresel duruma yeniden düzenlemek genellikle en kolayıdır.


23
Bunu takip etmek için, ilgili Redux SSS girişi, kullanımının setStatetamamen iyi olduğunu vurgulamaktadır : redux.js.org/docs/faq/…
markerikson

2

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.