【发布时间】:2021-06-03 14:37:03
【问题描述】:
我正在尝试将 redux persist 添加到 redux 工具包,但由于某种原因,我在 vscode 上收到 Exported variable 'store' has or is using name '$CombinedState' from external module ".../node_modules/redux/index" but cannot be named. 错误。
这是我的商店配置文件,其中添加了持久配置,如果我将其删除,则可以正常工作。
import { configureStore } from "@reduxjs/toolkit";
import { persistReducer } from "redux-persist";
import storage from "redux-persist/lib/storage";
import { createEpicMiddleware } from "redux-observable";
import rootEpic from "onsite/redux/rootEpic";
import rootReducer from "onsite/redux/rootReducer";
const epicMiddleware = createEpicMiddleware();
const persistConfig = {
key: "root",
storage: storage,
};
const persistedReducer = persistReducer(persistConfig, rootReducer);
// Line that shows error
const store = configureStore({
reducer: persistedReducer,
middleware: [epicMiddleware],
});
export default store;
epicMiddleware.run(rootEpic);
我尝试过的其他事情是将combineReducers 声明(来自rootReducerimport)放入同一个文件或将文件转换为纯javascript,结果相同或相似。出于某种原因,打字稿决定仍然困扰着我的 javascript 文件:)
代码仍在运行,所以我很想就这样离开它,但我想摆脱它。
【问题讨论】:
-
你解决了吗?我有一个 monorepo 并将所有 react-scripts deps 从 3 更新到 4,并且在我的 tsconfig 上有
declaration: true的任何地方都出现此错误 -
留下错误,因为代码还在运行哈哈
-
我有同样的问题,也有
declaration: true,但我有点需要它,我的代码没有运行,有什么建议或解决方法吗?
标签: redux redux-toolkit redux-persist