目前,我有一個Node.js的模塊具有以下形式:Node.js的委託功能導入模塊
var events = require('events');
var emitter = new events.EventEmitter();
function emitSomething() {
emitter.emit("event");
}
exports.emitSomething = emitSomething;
exports.on = emitter.on;
但是通過on
註冊的回調沒有得到當我打電話叫emitSomething
。
我能解決這個問題,通過改變最後一行
exports.on = function(event, callback) { emitter.on(event, callback); };
是否有一個原因,我無法委派的功能到另一個模塊中定義的函數?
你怎麼「註冊」你的回調與「開」? – robkuz
@robkuz同樣的方式,我將註冊與任何EventEmitter的回調,所以如果我的模塊被稱爲「myModule」,我會註冊myModule.on(「事件」,功能(){console.log(「調用」);} ); – ahjmorton