Директно изпращане на thunk в Redux

Когато изпращахме екшъни от компоненти, ние използвахме хука useDispatch, който връща метода на store dispatch, тъй като в компонентите няма директен достъп до store.

Този път ние трябва да получим обекти с продавачи и да направим това веднъж при стартирането на нашето приложение. Можем да го направим директно от главния файл main.jsx на приложението, след като worker започне работа.

Нека отворим нашето приложение с продукти, а в него файла main.jsx и да импортираме в него thunk fetchSellers:

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

В този файл имаме достъпен store, затова тук не са нужни никакви хукове и можем директно да използваме неговия метод dispatch. Нека след реда:

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

Добавим следния:

main.jsxstore.dispatch(fetchSellers())

Нека стартираме нашето приложение. Сега в картите с продукти са посочени и продавачите:

Задание 1

Отворете вашето приложение със студенти. Отворете в него файла main.jsx. Импортирайте в него вашия thunk fetchTeachers и го изпратете непосредствено с метода store.dispatch.