The*_*ack 2 redux redux-saga react-redux redux-toolkit
即使我只在其中创建 Slice 并通过 Redux Saga 解决中间件,使用 Redux Toolkit 是否可以?
或者在这种情况下,最佳实践是使用 Redux Saga + raw Redux 而不使用 Toolkit?
谢谢
Redux-saga 只是一个更好地处理异步逻辑的中间件。如果您有大型应用程序,则 redux-saga 优于 redux-thunk。redux-saga 使测试变得更容易。
Redux 和 Redux toolkit 之间的区别是 redux toolkit 需要更少的代码来设置,而 redux-toolkit 使用 immer.js 更容易更新状态。
要将 redux-saga 与 redux-toolkit 集成,您需要编写 sagas,然后将它们组合起来
import { all } from "redux-saga/effects";
import { firstSaga } from "./firstSaga";
export default function* rootSaga() {
yield all([...firstSaga]);
}
Run Code Online (Sandbox Code Playgroud)
然后在 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;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4697 次 |
| 最近记录: |