我正在使用create-react-app,我应该设置项目的prod env,dev env不同并部署到dev服务器和prod服务器(分开)
现在,我找不到解决此问题的好方法,我在部署到服务器(产品或开发)之前更改自己的配置值。但它是 效率低且不稳定。
例如)
//config.json
...
"db": {
"prodSchema": "foo_p",
"devSchema": "foo_d",
"username": "dany",
"password": "****",
"host": "123.456.789.111:3306",
"dialect": "mysql"
},
...
并使用
//配置use.js
在部署、检查和更改...
//db.connect(config.prodSchema)
db.connect(config.devSchema)
我想在 create-react-app 中的“yarn build”生产环境和开发环境之前以不同的方式设置
最佳答案
使用 webpack 你可以应用 environment plugin并检查环境变量以检查您应该使用哪个配置文件。
browserify 有一个 transformation called envify出于同样的目的。
那么你可以这样做:
import axios from "axios";
const env = process.env.NODE_ENV || "development";
const config = {
development: {
baseURL: "http://127.0.0.1:3000",
},
staging: {
baseURL: "https://mysuperservice.herokuapp.com",
},
production: {
baseURL: "https://mysuperservice.com",
},
};
const api = axios.create({
baseURL: config[env].baseURL,
headers: {
"x-api-key": "ABC",
},
});
关于javascript - 如何在构建时以不同的方式构建开发环境和生产环境?等)数据库配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54357515/