Я нахожусь в этом проекте, построенном с использованием CRA, и мне нужно загрузить 3 конфигурации окружения (dev / stage / prod).
На данный момент я использую windows.location.hostname для идентификации хоста и экспорта конфигурации.
Я хочу аккуратный подход и хочу избежать условия if-else для идентификации текущего хостаи затем экспортируйте фактическую конфигурацию.
Текущий подход:
constant.js
import host from '../Libs/Helpers/host'
const localhost = {
APP_DIR: '/',
APP_HOSTNAME: 'http://travel-dev.local/',
...
}
const staging = {
APP_DIR: '/travel-cst-staging/',
APP_HOSTNAME: 'https://travel-dev.com/',
...
}
const production = {
APP_DIR: '/travel-cst/',
APP_HOSTNAME: 'https://travel.com/',
...
}
let exportVar = {}
if (host.isLocalhost())
{ exportVar = localhost }
else if (host.isStaging())
{ exportVar = staging }
else
{ exportVar = production }
export default exportVar
Я открываю, чтобы иметь различные файлы конфигурации, такие как - local.js, stage.js и prod.js, и загружаю их во время "npm run start ", передав переменную evn, но как этого добиться, мне неизвестно.
Любая помощь или предложение высоко ценится.