У меня очень простое приложение реагирования, загруженное с create-react-app
, которое дает мне имя текущей среды через process.env.NODE_ENV
, на основе которого я инициализирую свое хранилище Redux URL-адресами, специфичными для среды.
Мой магазин выглядит следующим образом
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'
Аналогичным образом рабочий URL записан в production.js
файле:
export var ENV_URL='https://production.com'
Это похоже на работу
Я получаю специфичный для env url на этапе инициализации.Мое сомнение в процессе.Здесь я импортирую все файлы env.При условии, что будет использован только один импорт, остальные будут отброшены.
Это правильный подход?Что еще я могу сделать, чтобы улучшить этот фрагмент?