2 回答
TA贡献1869条经验 获得超4个赞
尝试专门为您的记录器配置创建一个模块,然后您可以将其导入您的模块,而不是使用您的业务模块的副作用来创建记录器。
如果您需要/想要更改记录器配置,这将有所帮助 - 无需遵循一系列业务方法,您只需更新日志配置即可。
例子
记录器.js
'use strict';
// Any setup you need can be done here.
// e.g. load log libraries, templates etc.
const log = function(level, message) {
return console.log(level + ": " + message);
};
module.exports = log;
业务逻辑.js
'use strict';
var log = require('./logger');
var stuff = require('./stuff');
const do_stuff = function (thing) {
// do stuff here
log("INFO", "Did stuff");
}
TA贡献1784条经验 获得超8个赞
这是一种非常简洁的方法,但是在尝试共享更多变量或添加更多需求时可能会很尴尬。所以,你可以把所有的变量放在一个对象中,只解构你需要的变量books.js:
索引.js:
const state = {app, logger, some, other, variables};
require("./books")(state);
require("./another_file")(state);
书籍.js:
module.exports = async function ({app, logger}) {
};
添加回答
举报