Quando un utente interagisce con una visualizzazione React, la visualizzazione propaga un'azione attraverso un dispatcher centrale, ai vari negozi che contengono i dati dell'applicazione e la logica aziendale, che aggiorna tutte le viste interessate.
Per un esempio, diciamo che abbiamo due visualizzazioni: menu e contenuto. Rappresentano il menu principale tipico e l'area di contenuto di una pagina web. Quando si fa clic su una voce di menu, si attivano gli eventi attraverso il dispatcher. Gli eventi vengono ricevuti e gestiti dai negozi che aggiornano i loro dati secondo necessità. I negozi poi notificano le opinioni che dovrebbero rerenderne da soli.
Come hai detto, i negozi ricevono tutti gli eventi dal dispatcher. Come vantaggio, questo design è semplice e non richiede alcuna configurazione per negozio. Non è necessario registrare osservatori per ricevere eventi. E con l'osservatore dovresti anche filtrare gli eventi. Il numero di eventi inviati non è un problema perché esiste una relazione uno a uno con le visualizzazioni e gli archivi e in genere si dispone solo di una manciata di visualizzazioni nell'applicazione. IMHO il design dell'osservatore in questo caso sarebbe molto peggio.