[英]Nodejs: My eventEmitter won't emit events from inside its constructor
我在Node.js中使用自定义事件发射器遇到了一些麻烦。 我很确定自己已经正确创建了事件发射器,因为我可以在其实例上触发并捕获事件。
但是,没有触发其构造函数中的任何事件。 它们似乎都存在并且正在正确地注册其侦听器,但是this.emit函数不会执行任何操作。
为了清楚起见,这是一个最小的失败示例:
var EventEmitter = require("events").EventEmitter,
util = require("util");
var MyEmitter = function() {
var self = this;
EventEmitter.call(this);
someExternalFunction(function callback() {
self.emit("event 1"); // Does not fire
console.log("fires");
});
this.emit("event 2"); // Does not fire
return this;
};
util.inherits(Browser,EventEmitter);
var myEmitterInstance = new MyEmitter();
myEmitterInstance.emit("event 3"); // fires
myEmitterInstance.on("event 1 - does not fire", function () {
//Do something with the results of someExternalFunction.
} // this function never runs.
我不明白自己做错了什么。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.