使用create-react-app创建的环境变量初始化Redux应用程序

时间:2018-10-10 13:19:35

标签: javascript reactjs redux create-react-app redux-store

我有一个非常简单的用create-react-app引导的react应用程序,它通过process.env.NODE_ENV为我提供了当前环境的名称,在此基础上,我使用环境特定的URL初始化了Redux存储。

我的商店看起来像这样

import { createStore, compose } from 'redux'
import { reducer } from '../reducers/index.js'

import * as devEnvironment from '../../../env-variables/development'
import * as prodEnvironment from '../../../env-variables/production'

var initialStore = {}

switch(process.env.NODE_ENV) {
    case 'development': {
        initialStore = devEnvironment
        break
    }
    case 'production': {
        initialStore = prodEnvironment
        break
    }
}
const enhancer = compose(
    window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__()
)

const store = createStore(reducer, initialStore, enhancer)

export default store

development.js文件中我的环境特定值:

export var ENV_URL='https://development.com'

类似地,在production.js文件中写入生产网址:

export var ENV_URL='https://production.com'

这似乎很有效 enter image description here

我正在初始化阶段获取特定于env的URL。 我对此过程表示怀疑。在这里,我将导入所有环境文件。根据条件,将仅使用一种进口,而其他将被丢弃。

这是有效的方法吗?我还可以做些什么来改善此代码段?

0 个答案:

没有答案