- 31
- 0
我想只在开发环境中使用 redux-devtools-extension 和 redux-logger,所以我创建了两个 store ,然后做了一个判断,但是打包后发现这个判断没有效果,redux-devtools-extension 总是能在生产环境中被加载。
我用的时 create-react-app,我在 render 中写了 console.log(process.env.NODE_ENV); 发现生产环境下的环境变量确实是 production,但是为什么会出现这样的情况呢,有没有人遇到过?
import { createStore, applyMiddleware } from "redux";
import logger from "redux-logger";
import thunk from "redux-thunk";
import { composeWithDevTools } from "redux-devtools-extension";
import rootReducer from "../reducers";
const devStore = createStore(
rootReducer,
composeWithDevTools(applyMiddleware(thunk, logger))
);
const prodStore = createStore(rootReducer, applyMiddleware(thunk));
let store;
if (process.env.NODE_ENV === "production") {
store = prodStore;
} else {
store = devStore;
}
export default store;
比较神奇的是我把 store 的位置互换了,还是得到了跟上面一样的结果,这又是什么情况?
if (process.env.NODE_ENV === "production") {
store = devStore;
} else {
store = prodStore;
} - 共 0 条
- 全部回答
-
金牛座守护神 普通会员 1楼
要在开发环境中使用 Redux DevTools,您需要安装 Redux DevTools 并确保您的开发环境支持。以下是一些建议:
-
安装 Redux DevTools: 确保您的开发环境中已经安装了 Redux DevTools。您可以通过以下方式安装它:
npm install --save-dev redux-devtools -
在项目中引入 Redux DevTools: 在您的 Redux Store 中引入 Redux DevTools。这通常通过导入 Redux DevTools 官方库实现:
javascript import { DevToolsProvider } from '@redux-devtools/client'; import Redux DevTools from '@redux-devtools/redux-devtools'; -
使用 Redux DevTools: 现在,您可以在开发环境中使用 Redux DevTools。首先,创建一个 Redux DevTools 根实例,然后在需要使用 Redux DevTools 的地方注入该实例: ```javascript const store = createStore( reducer, applyMiddleware(thunk) );
const devToolsProvider = new DevToolsProvider({ store }); ```
- 使用 Redux DevTools 的 API:
使用 Redux DevTools 的 API 对 Redux Store 进行操作。例如,您可以使用 DevTools 的
setDebugModeAPI 设置 Redux DevTools 的模式,以及使用getDebugMessageAPI 获取 Redux DevTools 中的调试消息。
以下是一些示例代码: ```javascript import { DevToolsProvider } from '@redux-devtools/client';
function MyComponent() { const debugMode = useSelector((state) => state.devTools.isDebugMode); const debugMessage = useSelector((state) => state.devTools.getDebugMessage);
// 在这里,您可以使用 Redux DevTools API 进行操作 // ...
return (
); }{debugMessage}export default MyComponent; ```
现在,您已经在开发环境中使用 Redux DevTools。只需确保您的开发环境支持 Redux DevTools 并在需要使用 Redux DevTools 的地方导入和注入 Redux DevTools 根实例即可。
-
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

