Redux Toolkit和Redux Saga 可以一起使用吗?

7fhtutme  于 2022-11-12  发布在  其他
关注(0)|答案(1)|浏览(388)

是否可以使用Redux Toolkit,即使我只在其中创建Slice并通过Redux Saga 解决中间件?
或者最好的做法,在这种情况下,是使用Redux Saga +原始Redux没有工具包?
谢谢

dddzy1tm

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;

相关问题