現在、次の形式の 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); };
on 関数を別のモジュールで定義された関数にデリゲートできない理由はありますか?