主题
自定义环境变量
在某些时候,开发环境和生产环境的某些变量应该是不同的,如 url 的请求前缀,则如何让系统自动区分?
模式
development模式用于npm starttest模式用于npm testproduction模式用于npm run build
创建变量
在项目根目录中放置下列文件来指定环境变量
sh
.env # 在所有的环境中被载入
.env.local # 在所有的环境中被载入,但会被 git 忽略
.env.[mode] # 只在指定的模式中被载入
.env.[mode].local # 只在指定的模式中被载入,但会被 git 忽略只有 NODE_ENV 和以 REACT_APP_ 开头的变量会被嵌入到客户端侧的代码
REACT_APP_AXIOS_URL=https://localhost:3000/api使用
js
const baseUrl = process.env.REACT_APP_BASE_URL优先级
.env.[mode].local > .env.[mode] > .env
如果
.env.[mode]是公共仓库的变量,当自己本地需要使用不同的变量时,可以用.env.[mode].local,优先级被.env.[mode]高,且不会被上传到公共仓库
