EventEmitter をサブクラス化するにはどうすればよいですか? 私は次のテストを試みています:
var util = require('util')
,events = require('events');
function Downloader() {
events.EventEmitter.call(this);
}
util.inherits(Downloader, events.EventEmitter);
console.log(new Downloader() instanceof events.EventEmitter); // true
Downloader.prototype.download = function(episode) {
var self = this;
var statusMessage = 'Downloading: ' + episode;
self.emit('status', statusMessage);
setTimeout(function() {
var finishedMessage = 'Downloaded ' + episode;
self.emit('finished', finishedMessage);
}, 5000);
}
exports.Downloader = new Downloader();
ノードは「オブジェクト」にメソッド「on」がないと文句を言います。ただし、Downloader instanceOf EventEmitter をチェックすると true が返されます。
誰か説明できますか?ありがとう!