require('config')在调试中未加载任何内容

时间:2019-03-22 20:08:07

标签: node.js node-config

我的nodejs应用config = require('config')(3.0.1)在调试中未返回任何内容。这是控制台输出:

 config: 
 Config {}

NODE_ENV仅在development.json中定义,并且在开发中加载没有问题。

这是./config下的文件:

enter image description here

什么会导致配置模块无法在调试中加载?

1 个答案:

答案 0 :(得分:1)

在运行应用程序时,配置文件名需要绑定到您要设置的NODE_ENV或NODE_CONFIG_ENV。 (https://github.com/lorenwest/node-config/wiki/Configuration-Files#file-load-order

您无需在配置文件中设置NODE_ENV。

例如(假设运行应用程序的命令为npm start):

NODE_CONFIG_ENV=foo npm start

^这将首先加载default.json中的所有配置属性,然后用在foo.json中设置的任何属性覆盖它们。如果您想添加local.json,这些属性将是最终的替代。

我认为默认情况下是假设您的环境是“开发中”,而且我猜您的default.json为空。