Ok, lascia che ti spieghi da Step by Step
1 Che cos'è Flux?
- Uno schema
- Spedizioniere centralizzato
- Flussi di dati unidirezionali
- Voce di elenco
Lo chiamano Flux anche per un motivo.
Implementazioni Flux
- Flusso di Facebook
- alt
- Riflusso
- sconcertare
- NuclearJS
- Fluxible
Una chat con Flux
Reagisci : Ehi Azione, qualcuno ha fatto clic su questo pulsante "Salva rotta".
Azione : grazie React! Ho registrato un creatore di azioni con il dispatcher, quindi il dispatcher dovrebbe occuparsi di notificare a tutti i negozi interessati.
Dispatcher : fammi vedere chi se ne frega di un corso salvato. Ah! Sembra che lo Store abbia registrato un callback con me, quindi lo farò sapere.
Negozio : Hi dispatcher! Grazie per l'aggiornamento! Aggiornerò i miei dati con il payload che hai inviato. Quindi emetterò un evento per i componenti di React che interessano.
Reagisci : Ooo! Nuovi dati brillanti dal negozio! Aggiornerò l'interfaccia utente per riflettere questo!
API Flux
register (funzione callback) - “Ehi dispatcher, eseguimi quando accadono delle azioni. -Memorizzare"
unregister (string id) - “Ehi dispatcher, smetti di preoccuparti di questa azione. -Memorizzare"
waitFor (ID array) : “Aggiorna prima questo archivio. -Memorizzare"
dispatch (payload oggetto) - “Ehi dispatcher, informa i negozi di questa azione. -Azione"
isDispatching () - "Sono impegnato a inviare callback in questo momento."
quindi la domanda che ci viene in mente è
Quindi Flux è un modello di abbonamento e pubblicazione?
Non proprio.
Differisce in due modi:
1. Ogni payload viene inviato a tutti i callback registrati.
2. I callback possono attendere altri callback
Sommario
Il flusso è un modello per flussi di dati unidirezionali Azioni che incapsulano eventi Dispatcher è un hub centrale che contiene i callback I negozi mantengono lo stato dell'app Molte implementazioni