是否可以使用Redux Toolkit,即使我只在其中创建Slice并通过Redux Saga 解决中间件?或者最好的做法,在这种情况下,是使用Redux Saga +原始Redux没有工具包?谢谢
dddzy1tm1#
Redux-saga只是一个更好地处理异步逻辑的中间件,如果你有一个大规模的应用程序,redux-saga比redux-thunk更受欢迎。Redux和Redux工具包之间的区别是Redux工具包需要较少的代码来设置,而Redux-toolkit使用immer.js来更容易地更新状态。要将redux-saga与redux-toolkit集成,您需要编写saga,然后将它们组合在一起
import { all } from "redux-saga/effects"; import { firstSaga } from "./firstSaga"; export default function* rootSaga() { yield all([...firstSaga]); }
然后在store.js中
import { configureStore } from "@reduxjs/toolkit"; import createSagaMiddleware from "redux-saga"; import rootSaga from "./rootSaga"; const sagaMiddleware = createSagaMiddleware(); const store = configureStore({ reducer: { movie: MovieReducer, }, middleware: (getDefaultMiddleware) => // adding the saga middleware here getDefaultMiddleware().concat(sagaMiddleware), }); sagaMiddleware.run(rootSaga); export default store;
1条答案
按热度按时间dddzy1tm1#
Redux-saga只是一个更好地处理异步逻辑的中间件,如果你有一个大规模的应用程序,redux-saga比redux-thunk更受欢迎。
Redux和Redux工具包之间的区别是Redux工具包需要较少的代码来设置,而Redux-toolkit使用immer.js来更容易地更新状态。
要将redux-saga与redux-toolkit集成,您需要编写saga,然后将它们组合在一起
然后在store.js中