Ok lascia che ti spieghi passo dopo passo
1 Cos'è Flux?
- Un pattern
- Dispatcher centralizzato
- Flussi di dati unidirezionali
- Elemento dell'elenco
Lo chiamano anche Flux per un motivo.
Implementazioni di flusso
- Flusso di Facebook
- Alt
- Reflusso
- flummox
- NuclearJS
- Fluxible
Unachatconflusso
Reagisce:HeyAzione,qualcunohafattoclicsulpulsante"Salva corso".
Azione : grazie Reagire! Ho registrato un creatore di azioni con il dispatcher, quindi il dispatcher dovrebbe occuparsi di notificare tutti i negozi che lo interessano.
Dispatcher : fammi vedere a chi importa che un corso venga salvato. Ah! Sembra che lo Store abbia registrato una richiamata con me, quindi le farò sapere.
Negozio : Ciao committente! Grazie per l'aggiornamento! Aggiornerò i miei dati con il payload che hai inviato. Quindi emetterò un evento per i componenti React che ti interessa.
Reagisci : Ooo! Nuovi dati brillanti dal negozio! Aggiornerò l'interfaccia utente per riflettere questo!
API Flux
registrati (funzione callback) - "Ehi dispatcher, eseguimi quando si verificano azioni. -Store”
annulla registrazione (id stringa) - "Ehi dispatcher, non preoccuparti di questa azione. -Store”
waitFor (array id) - "Aggiorna prima questo negozio. -Store”
dispatch (carico utile dell'oggetto) - "Ehi dispatcher, informa i negozi di questa azione. -Azione”
isDispatching () - "Sono impegnato a inviare callback al momento."
quindi la domanda che ci viene in mente è
So Flux Is a Publish-Subscribe Model?
Non proprio.
Si differenzia in due modi:
1. Ogni payload viene inviato a tutti i callback registrati.
2.Le richiamate possono attendere altre callback
Riepilogo
Il flusso è un modello per flussi di dati unidirezionali
Le azioni incapsulano gli eventi
Dispatcher è un hub centrale che contiene i callback
I negozi conservano lo stato dell'app
Molte implementazioni