Trimiterea directă a thunk în Redux
Când trimiteam acțiuni din componente, foloseam
hook-ul useDispatch, care returnează metoda
dispatch a store-ului, deoarece în componente
nu există acces direct la store.
De data aceasta, trebuie să obținem obiectele
cu vânzătorii și să facem acest lucru o singură dată
la lansarea aplicației noastre. Putem face
acest lucru direct din fișierul principal
main.jsx al aplicației, după ce
worker-ul își începe activitatea.
Să deschidem aplicația noastră cu
produse, iar în ea fișierul main.jsx și
să importăm în el thunk-ul fetchSellers:
import { fetchSellers } from './parts/sellers/sellersSlice'
În acest fișier, avem acces la store,
deci nu sunt necesare hook-uri aici și
putem folosi direct
metoda sa dispatch. Să adăugăm după
linia:
await worker.start({ onUnhandledRequest: 'bypass' })
Următoarea:
store.dispatch(fetchSellers())
Să pornim aplicația noastră. Acum în cardurile cu produse sunt indicați și vânzătorii:
Deschideți aplicația voastră cu studenții.
Deschideți în ea fișierul main.jsx. Importați
în el thunk-ul dvs. fetchTeachers și trimiteți-l
direct cu metoda store.dispatch.