一尘不染

如何在node.js中使用全局变量?

node.js

例如,我想使用自定义记录器:

logger = require('basic-logger'),
logger.setLevel('info')

var customConfig = {
showMillis: true,
showTimestamp: true
}

var log = new logger(customConfig)

如何在其他模块而不是console.log中使用此记录器?


阅读 327

收藏
2020-07-07

共1个答案

一尘不染

大多数人建议不要使用全局变量。如果要在不同模块中使用相同的记录器类,则可以执行此操作

logger.js

  module.exports = new logger(customConfig);

foob​​ar.js

  var logger = require('./logger');
  logger('barfoo');

如果确实需要全局变量,则可以执行以下操作:

global.logger = new logger(customConfig);
2020-07-07