Làm cách nào để kế thừa các sự kiện.EventEmitter phương pháp trên mô-đun triển khai mẫu thiết kế đơn lẻ?NodeJS - Singleton + Sự kiện
var EventEmitter = require('events').EventEmitter;
var Singleton = {};
util.inherits(Singleton, EventEmitter);
Singleton.createClient = function(options) {
this.url = options.url || null;
if(this.url === null) {
this.emit('error', 'Invalid url');
} else {
this.emit('created', true);
}
}
module.exports = Singleton;
Điều này dẫn đến các lỗi: TypeError: Object #<Object> has no method 'emit'
Được sử dụng '' 'Singleton.prototype.createClient''' để thêm hàm từ ví dụ của tôi. Trong app.js '' 'var S = require ('singleton.js'). GetInstance(); S.createClient ({url: 'test'}). On ('connected', function() {}); '' 'Không hoạt động' '' TypeError: Không thể gọi phương thức 'on' của undefined''' –
nevermind , đã phải '' 'trở lại tự'' cho chuỗi để làm việc: P thx! –