在我正在构建的Node API中,我想创建一个全局布尔以启用(或禁用)某些调试日志记录。我现在这样做的权利:在Node.js中使用“全局”
在main.js
(主入口点)我有:
global.DEBUG = true;
然后在我使用的任何模块,我可以这样做:
if (DEBUG) {
// then do stuff
}
这样做有什么不妥吗?有没有更合适的方法,如果是的话,为什么这是更好的方法?
在我正在构建的Node API中,我想创建一个全局布尔以启用(或禁用)某些调试日志记录。我现在这样做的权利:在Node.js中使用“全局”
在main.js
(主入口点)我有:
global.DEBUG = true;
然后在我使用的任何模块,我可以这样做:
if (DEBUG) {
// then do stuff
}
这样做有什么不妥吗?有没有更合适的方法,如果是的话,为什么这是更好的方法?
你最好用环境变量来做这件事。
var DEBUG = process.env.DEBUG;
if (DEBUG) {
// then do stuff
}
然后开始你的应用程序
$ DEBUG=TRUE node app.js
使用配置模块,包括它如果需要的话:
//conf.js
module.exports = {
DEBUG: true
}
//other.js
if(require('./conf').DEBUG)
你可以这样做:
global.debug = true ;// or false
//and in any file
if(global.debug){
// something
}
我正想说同样的话。我通常使用名为'LOG_LEVEL'的环境变量,可以是'ERROR','WARN','INFO','DEBUG'等。 – 2014-11-22 19:54:56
我喜欢。让我想我应该去找[这个](https://www.npmjs.org/package/log)太哈哈了 – brandonscript 2014-11-22 19:57:58