Sta dando ai subiduttori l'accesso a tutto lo stato una cattiva idea?

0

Ho un'app Redux con un albero di stato abbastanza piatto. Tutti i sub-riduttori gestiscono una parte separata dello stato e sono collegati insieme a combineReducers .

Il mio problema è che in alcuni casi ho bisogno di accedere allo stato part A nel sub-riduttore per stato parte B . La Domande frequenti su Redux ha una sezione su questo, con tre suggerimenti:

  1. Riorganizza l'albero di stato.
  2. Non utilizzare combineReducers .
  3. Utilizza i thunk per inviare azioni con le parti pertinenti dello stato in esse.

Per me, # 1 non è un'opzione dal momento che il mio albero è già altamente normalizzato. Sento che # 2 renderebbe il mio codice straordinariamente complesso solo per gestire un caso limite. Quindi attualmente sto andando con # 3, ma non mi piace molto. Per me, ha più senso mantenere la logica che descrive come il nuovo stato dipende dal vecchio stato nei riduttori e non dai creatori di azioni.

Questo mi ha portato a considerare una quarta opzione, vale a dire scrivere il mio combineReducersWithFullState che dà ai subiduttori la seguente firma:

(localState, action, fullState) => newLocalState

Questa è una cattiva idea? Sto istituzionalizzando un anti-modello qui?

    
posta Anders 16.08.2018 - 10:52
fonte

0 risposte

Leggi altre domande sui tag