在开发过程中我们经常会遇到开发环境和生产环境中有一些环境变量不同。
所以我们需要配置一些环境变量允许你的应用程序根据你想让它们运行的环境做出不同的行为。
所以当我们配置好了环境变量后我们就可以在一套代码中在任意的环境中运行了。
通常我们会在http端口,文件路径,数据库终于到需要切换的情况。
我们新建一个config目录创建development.js, production.js和index.js
image.png
在development.js我们随便写一个路径
module.exports = {
path: {
downloadPath: 'C:\\Users\\XiGong\\Downloads\\'
}
}
在index.js中判断
var path = require('path');
// 通过NODE_ENV来设置环境变量,如果没有指定则默认为生产环境
var env = process.env.NODE_ENV || 'production';
env = env.toLowerCase();
// 载入配置文件
var file = path.resolve(__dirname, env);
try {
var config = module.exports = require(file);
} catch (err) {
console.error('Cannot load config: [%s] %s', env, file);
throw err;
}
接下来我们就可以在任意位置引入了
const config = require('../config');
console.log(config.path.downloadPath)
接下来我们只需要在package.json中修改就可以了
如果是windows环境的话我们需要加上set
例如
"scripts": {
"start": "set NODE_ENV=development&&node bin/www",
"dev": "./node_modules/.bin/nodemon bin/www",
"prd": "pm2 start bin/www",
"test": "echo \"Error: no test specified\" && exit 1"
},