【发布时间】:2015-07-01 07:11:30
【问题描述】:
我已经为 ENV 变量创建了以下配置文件,我想在开发中对其进行测试(在开发周期中我想测试 prod 和 dev 变量并获得不同的配置值),我该怎么做?
module.exports = function () {
switch (process.env.NODE_ENV) {
case 'development':
return
{
PORT : 3010
UUID : '13bfbcf4-1f2f-11e5-b5f7-727283247c7f'
};
case 'production':
return
{
PORT : 4000
UUID : '3e30020a-1f2f-11e5-b5f7-727283247c7f'
};
default:
}
};
在我使用的 server.js 文件中
config = require('./config');
...
configs = new config();
但不知道如何测试它并传递值,因为当我在上面的行 process.env.NODE_ENV = 'development' 之后出现错误,知道如何在本地测试 prod 和 dev 的配置吗?
此外,这是推荐使用 dev/prod 进行此操作的方法吗?
【问题讨论】:
-
查找如何在 linux(或其他)中设置环境变量,它不是节点的一部分
-
@dandavis 那么您建议如何测试配置文件?我希望例如当您处于“生产”状态时获得端口 4000,提前致谢!
-
您似乎正在尝试重新实现
config。无论如何,您的配置文件包含无效的 Javascript(对象属性后缺少逗号)。 -
config = require('./config')(); console.log("using port: ", config.port) -
@dandavis-谢谢,但在这种情况下我得到了哪个端口,开发人员?所以只是为了验证我不能以某种方式将环境修改为仅用于测试的生产环境?..
标签: javascript node.js environment-variables