我决定将 RNDebugger 和 Redux Devtools Extension 包添加到我的应用程序中,以帮助调试和稍后使用 redux persist 进行测试(我还没有实现)。因此,我现在为我的 React Native 应用程序的状态架构使用以下包:React Redux、Redux、Redux Thunk、RNDebugger 和 Redux Devtools Extension。根据他们的文档,RNDebugger 和 Redux Devtools Extension 作为开发依赖项安装。我在创建我的 redux 商店时使用了 composeWithDevTools 函数。所以我想知道,我是否必须安装 RNDebugger 和 Redux Devtools Extension 作为生产依赖项,因为 composeWithDevTools 函数是 Redux Devtools Extension 包的一部分?我不想在生产环境中使用调试器,但我也不想 不希望应用程序在生产时失败,因为 composeWithDevTools 函数是未知的。我的代码工作正常,我可以在 RNDebugger 中看到 redux 存储(很好!)。尽管如此,这是我的基本设置:
// Store.js
import { createStore, applyMiddleware } from 'redux';
import { composeWithDevTools } from "redux-devtools-extension";
import ReduxThunk from 'redux-thunk';
import reducers from '@reducers/';
export default createStore(
reducers,
composeWithDevTools(
applyMiddleware(ReduxThunk)
)
);
// App.js
import React, { Component } from 'react';
import { Provider } from 'react-redux';
import Store from './Store';
import Router from './Router';
class App extends Component {
render() {
return (
<Provider store={Store}>
<Router />
</Provider>
);
}
}
export default App;