如果我有一个节点模块(我写过),并且想给它传递一个值,我可以这样做:

var someValue process.env.SomeKey || '';

var someModule = require('./someModule');

someModule.setOption({ 'SomeKey' : someValue });

但是感觉就像我在重新发明轮子。

有没有更好的方法可以做到这一点,或者它完全是主观的?

最佳答案

通常,您只需从模块中导出一个函数:

module.exports = function(opts){
    return {
        // module instance
    };
}

然后在要求页面中:
var mod = require('module')({ someOpt: 'val' });

但实际上,您可以按照自己的意愿进行操作。没有固定的标准。

09-25 16:24