0
而不是使用:使用类扩展而不是util.inherits
var inherits = require('util').inherits;
var EventEmitter = require('events').EventEmitter;
var Clock = function Clock() {
this._started = false;
EventEmitter.call(this);
};
inherits(Clock, EventEmitter);
Clock.prototype.start = function start() {};
使用类扩展为更清洁恕我直言:
var EventEmitter = require('events').EventEmitter;
class Clock extends EventEmitter {
constructor() {
super();
this.super_ = EventEmitter;
this._started = false;
}
start() {}
}
我添加this.super_ = EventEmitter的构造,只是因为util.inherits正在做同样的事情(ctor.super_ = superCtor;)。我尝试了没有它,它看起来没有它的作品。
现在我的问题:超级属性是必要的,它由节点以某种方式使用?或者是否有任何问题使用ES6类扩展而不是使用util.inherits继承的“节点的方式”?
THX,是有道理的。 –