Middleware βρίσκεται ανάμεσα στη διαχείριση μιας action και στη δράση που φτάνει στο reducer, επιτρέποντάς σας να παρεμβάλετε actions για να χειριστείτε παρενέργειες (async κλήσεις API, logging) — κάτι που τα reducers δεν μπορούν να κάνουν γιατί πρέπει να παραμείνουν καθαρά. Thunks είναι το πιο κοινό middleware, επιτρέποντας ασύγχρονη λογική.
Πού ταιριάζει το middleware
dispatch(action) → [ middleware 1 → middleware 2 → ... ] → reducer → store
(can inspect, modify, delay, or stop actions; do side effects)
