如果您使用的是create-react-app,并且只需要本地和生产环境,请使用添加自定义环境变量内置功能。否则,一个有用的替代方法是env-cmd。
安装 env-cmd,作为开发依赖:
npm i -D env-cmd
添加.env文件(在项目根目录下,所有环境都相同):
REACT_APP_API_ENDPOINT = https://default.example.com
添加.env.qa文件:
REACT_APP_API_ENDPOINT = https://qa.example.com
添加.env.staging文件:
REACT_APP_API_ENDPOINT = https://stage.example.com
添加.env.production文件:
REACT_APP_API_ENDPOINT = https://production.example.com
更新 package.json
{
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"build:qa": "env-cmd -f .env.qa npm run-script build",
"build:staging": "env-cmd -f .env.staging npm run-script build",
}
}
请注意,默认的start和build create-react-app 命令分别使用.env和.env.production,不需要env-cmd。
准备在我们的代码中使用
const baseUrl = process.env.REACT_APP_API_BASE_URL;
而且,我们也可以在开发环境中使用 env-cmd 作为启动命令。