![](/img/trans.png)
[英]How to resolve a promise from the outside with eventEmitter in nodeJS?
[英]How handle multiple objects with EventEmitter - NodeJS
主文件
var DogModule = require('Dog');
var dogsList = [];
function addNewDog(){
var newDog = new Dog();
dogsList.push(newDog);
}
???.on('bark', function(barkSound) {
console.log(barkSound);
});
狗档案
var EventEmitter = require('events').EventEmitter;
function Dog() {
EventEmitter.call(this);
this.name = "asda";
this.chipId = 1234;
this.emit('bark', "au-au");
}
Dog.prototype = {
getName: function () {
return this.name;
},
getChipId: function () {
return this.chipId;
}
}
问题 1 - 如何将 EventEmitter.prototype 正确添加到 Dog 对象并保存当前原型,并且基本上只访问 EventEmitter 方法?
这里的问题是如何不覆盖现有的方法......
问题 2 - 处理一个对象没问题,但对于多个对象,我如何处理它们的个性,知道它们将存储在该列表中?
谢谢你。
为了防止重写原型,你可以使用Object.assign
:
util.inherits(Dog, EventEmitter);
Dog.prototype = Object.assign({
getName: function () {
return this.name;
},
getChipId: function () {
return this.chipId;
}
}, Dog.prototype);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.