Közvetlen thunk küldés a Redux-ban

Amikor a komponensekből küldtünk actionöket, akkor a useDispatch hookot használtuk, amely visszaadja a store dispatch metódusát, mivel a komponensekben nincs közvetlen hozzáférés a store-hoz.

Ezúttal meg kell szereznünk az eladókat tartalmazó objektumokat, és ezt egyszer kell megtennünk az alkalmazásunk indításakor. Ezt megtehetjük közvetlenül a fő main.jsx fájlból, miután a worker elkezdte a munkát.

Nyissuk meg a termékekkel rendelkező alkalmazásunkat, és benne a main.jsx fájlt, majd importáljuk bele a fetchSellers thunk-ot:

main.jsximport { fetchSellers } from './parts/sellers/sellersSlice'

Ebben a fájlban hozzáférünk a store-hoz, ezért itt nincs szükség hookokra, és közvetlenül használhatjuk annak dispatch metódusát. Adjuk hozzá a következő sort:

main.jsxawait worker.start({ onUnhandledRequest: 'bypass' })

után:

main.jsxstore.dispatch(fetchSellers())

Indítsuk el az alkalmazásunkat. Most már a termékeket tartalmazó kártyákon feltüntetésre kerültek az eladók is:

Задание 1

Nyissa meg a diákokkal rendelkező alkalmazását. Nyissa meg benne a main.jsx fájlt. Importálja bele a fetchTeachers thunk-ot, és küldje el közvetlenül a store.dispatch metódussal.