定义配置变量对于require()Lib

时间:2018-01-06 01:02:40

标签: javascript node.js

我在NodeJS中创建一个库,它需要一些配置变量
我希望能够在主js文件中定义这些变量,并且能够在core.js文件中使用它们,如此

var config1 = "stuff"; 
var config2 = "more stuff;

var db = require('./core.js'); //this file uses config1 and config2

有没有办法这样做而不使用exports.config1并将文件包含在core.js中? 我很抱歉,如果这很明显,但我在谷歌上找不到任何东西。

修改
我使用了一个带构造函数的类

var config1 = "stuff"; 
var config2 = "more stuff;

var tt = require('./core.js');
const db = new tt(config1, config2);

1 个答案:

答案 0 :(得分:0)

实现此目的的一种方法是将它们定义为全局变量。

<强> main.js

global.config1 = "stuff"; 
global.config2 = "more stuff;

然后你可以在main.js中访问它们。

<强> core.js

console.log(global.config1)

另请注意,global已弃用。您将看到以下错误。

(node:59502) DeprecationWarning: 'GLOBAL' is deprecated, use 'global'

需要注意的另一点是,您应该谨慎地将变量放在全局范围内。