Прамая адпраўка thunk у Redux
Калі мы адпраўлялі экшны з кампанентаў, то
карысталіся хукам useDispatch, які
вяртае метад store dispatch, паколькі
ў кампанентах няма непасрэднага доступу да store.
На гэты раз нам трэба атрымаць аб'екты
з прадаўцамі і зрабіць гэта адзін раз пры
запуску нашага прыкладання. Мы можам гэта
зрабіць прама з галоўнага файла
main.jsx прыкладання, пасля таго як
worker пачне працу.
Давайте адкрыем наша прыкладанне з
прадуктамі, а ў ім файл main.jsx і
імпартуем у яго thunk fetchSellers:
import { fetchSellers } from './parts/sellers/sellersSlice'
У гэтым файле ў нас даступны store,
таму ніякіх хукаў тут не трэба і
мы можам непасрэдна скарыстацца
яго метадам dispatch. Давайте пасля
радкі:
await worker.start({ onUnhandledRequest: 'bypass' })
Дадамо наступную:
store.dispatch(fetchSellers())
Запусцім наша прыкладанне. Цяпер у картках з прадуктамі паказаны і прадаўцы:
Адкрыйце ваша прыкладанне са студэнтамі.
Адкрыйце ў ім файл main.jsx. Імпартуйце
ў яго ваш thunk fetchTeachers і адпраўце
яго непасрэдна метадам store.dispatch.