【发布时间】:2018-03-27 02:54:13
【问题描述】:
基于这里https://stackoverflow.com/a/22524056/777700的这个答案,我设置了完全相同的配置选项,但它不起作用。
我的(部分)app.js 文件:
console.log('environment: '+process.env.NODE_ENV);
const config = require('./config/db.json')[process.env.NODE_ENV || "development"];
console.log(config);
我的 ./config/db.json 文件:
{
"development":{
"host":"localhost",
"port":"3306",
"username":"root",
"password":"",
"database":"dbname"
},
"production":{
"host":"production-host",
"port":"3306",
"username":"user",
"password":"pwd",
"database":"dbname"
}
}
Console.log 输出:
environment: development
undefined
应用程序崩溃。知道为什么吗?文件在那里,如果我删除 require() 的 [...] 部分,它会打印出 db.json 文件,并打印出 undefined。
编辑
我试图在 require() 之后添加console.log(typeof config) 以查看我得到了什么,我注意到如果我require('./config/db.json')[process.env.NODE_ENV] 我得到undefined,但如果我require('./config/db.json')["development"] 我得到正确的对象。
版本:
nodeJS 6.11.4
express 4.16.2
【问题讨论】:
-
请告诉我您正在尝试什么,因为您似乎还没有定义您的 NODE_ENV 环境值...
-
它应该在你的 bashrc 文件中,或者你可以喜欢这个
NODE_ENV=development node app.js
标签: json node.js express require