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

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

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

var log = new logger(customConfig)

如何在其他模块而不是控制台中使用此记录器.日志(log)

推荐答案

大多数人建议不要使用全局变量.如果希望在不同的模块中使用相同的记录器类,可以这样做

记录器.js

  module.exports = new logger(customConfig);

福巴.js

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

如果你想要一个全局变量,你可以:

global.logger = new logger(customConfig);

Node.js相关问答推荐

已知NPM无法在node.js V12上运行的问题

用于SLACK命令返回json而不是文本的AWS lambda函数

MongooseError[MissingSchemaError]:尚未为模型注册架构

Typescript 正则表达式:过滤器返回空

如何在带有 JS 的 Nodejs 中使用没有 Async 方法的 Await

为什么要加密 CSRF 令牌?

强制 TypeScript 生成带有.js扩展名的导出/导入;运行 node 16?

在 gatsby 中安装软件包时不推荐使用的错误

使用 mongoose 查找过go 7 天的注册用户总数

node.js 变量不存在代码块

使用新react 18.0.0 的 create-react-app my-app redux 错误

Socket IOFlutter 未连接

eslint - vscode 的可选链接错误

在多个 .env 文件之间切换,例如 .env.development 和 node.js

ChildProcess 关闭、退出事件之间的区别

MongoDB Node findone如何处理没有结果?

续集findbyid不是一个函数,但显然findAll是

从 JavaScript 文件或 REPL 中 require()'ing CoffeeScript 文件

npm install packagename --save-dev 不更新 package.json

mongoose 填充与对象嵌套