Другим способом, без использования каких-либо дополнительных библиотек, является создание файла JS, который экспортирует объект с типичными ENV-узлами в качестве свойств. Затем импортируйте этот файл и установите переменные на основе текущего process.env.NODE_ENV. Очевидным недостатком является то, что на диске хранится доступный файл, который может содержать конфиденциальные данные .
Например:
https://codesandbox.io/s/qq0vwrn1zq
ENV / config.js
export default {
"development": {
name: "Bob"
},
"production": {
name: "Jim"
},
"staging": {
name: "Alexa"
},
"test": {
name: "Nancy"
}
};
example.js
import React from "react";
import ReactDOM from "react-dom";
import config from "./env/config";
import "./styles.css";
const env = process.env.NODE_ENV;
const name = config[env].name;
function App() {
return (
<div className="App">
<h1>Current ENV: {env}</h1>
<h2>Current Name: {name}</h2>
</div>
);
}
const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);