/ / reagire redux chiamata sincrona - reactjs, redux

reagisci redux call sincrono - reactjs, redux

Costruire un'applicazione React con redux come pattern di flusso.

Per utilizzare una API deve essere richiesta una richiesta di scambio di tokenaccadere. Questo deve verificarsi una sola volta all'avvio dell'applicazione React. Il token di accesso restituito dallo scambio di token deve essere archiviato nello stato redux e accessibile da altre chiamate API.

Un approccio che ho provato è chiamando un'azione di ridondanzanel componente App (principale), quindi tutte le altre chiamate si trovano all'interno dei componenti secondari. Nuovo per React ora capisco che questo non è l'approccio giusto in quanto gli eventi del ciclo di vita dei componenti React e le azioni e i riduttori chiamati non seguono un flusso sincrono, quindi le azioni di redux sono chiamate in modo asincrono.

Come faccio a garantire che un'azione di ridondanza venga chiamata primaqualsiasi altra azione di ridondanza che dipende dai risultati della prima azione di redux? Quale middleware sarebbe più adatto per garantire un approccio sincrono redux-thunk, redux-look e redux-saga.

risposte:

0 per risposta № 1

Se hai bisogno di un processo per essere eseguito prima di qualsiasi altra azione, puoi farlo prima creando il negozio e passando il risultato nella funzione principale del riduttore alla creazione del negozio.

Quindi, è sufficiente eseguire il rendering dell'app dopo la promessa o la richiamata di questo processo.

Altrimenti, invia questa azione iniziale dopo la creazione del negozio e prima del rendering dell'app (con redux-thunk se è asincrono).


0 per risposta № 2

Puoi usare Redux-thunk avere un comportamento "promettente" quando si dislocano le azioni. In questo modo è possibile garantire un'azione prima di inviarne un altro.