是为Node.js类似的包,我可以打印console.log基于部署环境?

在C / C ++中,我可以定义macrosDEBUG,例如我可以编写代码

#ifdef DEBUG std::cout<<"Some log data for debugging\n"; #endif 

只有在DEBUGmacros被定义的情况下才打印,因为生产是未定义的,打印时不会丢失时间。 是为Node.js类似的包,我可以打印console.log基于部署环境? 或者如何在Node.js中实现这一点?

使用NODE_ENV环境variables。

当你在开发中启动节点NODE_ENV=development node app.js

同样,在生产环境中将NODE_ENV环境variables设置为生产。

然后在你的代码中,你可以做到这一点。

 var DEV = process.env.NODE_ENV==='development'; if(DEV) console.log('Some log data for debugging');