Bezpośrednie wysyłanie thunk w Redux

Kiedy wysyłaliśmy akcje z komponentów, używaliśmy hooka useDispatch, który zwraca metodę store dispatch, ponieważ w komponentach nie ma bezpośredniego dostępu do store.

Tym razem musimy pobrać obiekty ze sprzedawcami i zrobić to raz przy uruchomieniu naszej aplikacji. Możemy to zrobić bezpośrednio z głównego pliku main.jsx aplikacji, po tym jak worker rozpocznie pracę.

Otwórzmy naszą aplikację z produktami, a w niej plik main.jsx i zaimportujmy do niego thunk fetchSellers:

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

W tym pliku mamy dostępny store, więc nie są tu potrzebne żadne hooki i możemy bezpośrednio skorzystać z jego metody dispatch. Dodajmy po linijce:

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

Następującą:

main.jsxstore.dispatch(fetchSellers())

Uruchommy naszą aplikację. Teraz w kartach z produktami podani są również sprzedawcy:

Задание 1

Otwórz twoją aplikację ze studentami. Otwórz w niej plik main.jsx. Zaimportuj do niego twój thunk fetchTeachers i wyślij go bezpośrednio metodą store.dispatch.