У меня регистратор, который я запускаю с помощью ограничителя в файле index.js
. Теперь мне нужно передать экземпляр регистратора в другие файлы, и я делаю это так:
index. js
const books = require(“./books”);
books(app, logger);
logger = initLogger({
level: levels.error,
label: “app”,
version: "0.0.1",
});
app.listen(port, () => logger.info(`listening on port ${port}`));
И внутри books.js
файл, который я использую, как показано ниже, возьмите регистратор из файла index.js
и используйте его внутри файла books.js
, также передайте его в другой файл с помощью функции isbn.get(books, logger);
, рекомендуется ли делать это как это? Есть ли способ чище в узлах?
книги. js
const isbn = require(“./isbn”);
module.exports = async function (app, logger) {
…
try {
Let books = await getBooks();
logger.info(“get “books process has started”);
} catch (err) {
logger.error("Failed to fetch books", err);
return;
}
…
// this function is from the file “isbn” and I should pass the logger to it also
try {
let url = await isbn.get(books, logger);
} catch (e) {
res.send(e.message);
}
}