我看到在Node.js中创建配置文件的多种方法。一个在js文件中使用module.exports,一个只使用普通的json对象。
// config1.js
module.exports = {
config_1: "value 1",
config_2: "value 2"
}
// config2.json
{
"config_1": "value 1",
"config_2": "value 2"
}
在配置文件中使用module.exports有什么好处吗?有什么区别?
答案 0 :(得分:24)
所以我总是从一个commonjs模块开始,以方便,但保持任何逻辑简单。如果你的config.js有bug并需要测试,那可能太复杂了。吻。如果我知道其他事情需要在我的配置中查找,我将使用JSON文件。
答案 1 :(得分:10)
谢谢@ jonathan-ong,看起来像config.js( NOT JSON文件)按预期工作,我可以发表一些评论。
module.exports = {
// Development Environment
development: {
database: {
host: '127.0.0.1',
login: 'dev',
password: 'dev'
}
},
// Production Environment
production: {
database: {
host: '127.0.0.1',
login: 'prod',
password: 'prod'
}
}
};
答案 2 :(得分:0)
js文件有自己的特权,如提到的@Peter Lyons。但是,如果我不必访问API密钥等的外部资源,我希望 JSON 用于配置文件。
简单的理由是我不必为了更改配置文件而触摸我的代码。我可以简单地创建一个API来编辑这些json文件,以添加,更新或删除任何配置键值对。甚至可以使用API为单独的环境添加全新的配置文件。
并使用配置模块来使用这些配置