第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Nodejs 在模塊之間傳遞日志實例

Nodejs 在模塊之間傳遞日志實例

慕無忌1623718 2022-12-18 16:22:05
我有記錄器,我在index.js文件中使用構造器啟動它。現(xiàn)在我需要將記錄器實例傳遞給其他文件,我是這樣做的索引.jsconst 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);,是否建議這樣做?節(jié)點中有更清潔的方法嗎?書籍.jsconst 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);        }}
查看完整描述

2 回答

?
MMTTMM

TA貢獻1869條經驗 獲得超4個贊

嘗試專門為您的記錄器配置創(chuàng)建一個模塊,然后您可以將其導入您的模塊,而不是使用您的業(yè)務模塊的副作用來創(chuàng)建記錄器。


如果您需要/想要更改記錄器配置,這將有所幫助 - 無需遵循一系列業(yè)務方法,您只需更新日志配置即可。


例子

記錄器.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;

業(yè)務邏輯.js

'use strict';


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

var stuff = require('./stuff');


const do_stuff = function (thing) {

    // do stuff here

    log("INFO", "Did stuff");

}


查看完整回答
反對 回復 2022-12-18
?
青春有我

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}) {


};


查看完整回答
反對 回復 2022-12-18
  • 2 回答
  • 0 關注
  • 127 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號