Λειτουργία μιας εφαρμογής Redux
Τώρα, οπλισμένοι με την ορολογία, μπορούμε να εξετάσουμε συνοπτικά τα κύρια στάδια λειτουργίας μιας εφαρμογής σε Redux, την οποία θα δημιουργήσετε στο μέλλον.
Η λειτουργία της εφαρμογής ακολουθεί την ιδέα της μονόδρομης ροής δεδομένων, όπως έχουμε ήδη αναφέρει προηγουμένως.
Στο στάδιο της προετοιμασίας (κατά την πρώτη εκκίνηση της εφαρμογής) με τη βοήθεια του root reducer δημιουργείται το store. Το store καλεί αυτόν τον reducer μόνο μία φορά και καταγράφει την τιμή που επιστρέφει ως την αρχική κατάσταση. Κατά την πρώτη απόδοση, τα components της εφαρμογής χρησιμοποιούν την τρέχουσα state, που έχει καταγραφεί στο store. Επίσης, εγγράφονται για ενημέρωση του store, για να ενημερώνονται αμέσως για οποιαδήποτε αλλαγή στην state.
Κατά τη συνέχεια λειτουργίας της εφαρμογής, συμβαίνει το εξής. Ας υποθέσουμε ότι ο χρήστης κάνει κλικ με το ποντίκι σε ένα κουμπί. Σε αυτήν την περίπτωση, με τη βοήθεια κώδικα, διαμορφώνεται μια action, η οποία αποστέλλεται στο store. Το store ξανά εκτελεί τον reducer με την state που αποθηκεύει σε αυτό και την action που λάμβανε. Ως αποτέλεσμα, η αλλαγμένη τιμή της state αποθηκεύεται ως νέα. Επίσης, το store ειδοποιεί τα components που έχουν εγγραφεί για αλλαγές ότι πράγματι έγιναν αλλαγές. Με τη σειρά τους, τα components ελέγχουν εάν τα μέρη της state που τα αφορούν άλλαξαν. Τέλος, εάν έχουν γίνει αλλαγές, το component πυροδοτεί την απόδοση για να εμφανίσει τα νέα δεδομένα.