在模块之间共享的事件发射器
Event emitter shared between modules
我使用事件发射器,似乎我在几个模块中需要它,我的意思是我想使用相同的实例,我的问题是最好创建一个暴露事件发射器实例的模块以及建议如何做到这一点?
我所做的就像我在模块之间共享的以下内容,但不确定是否推荐......请让我知道
var events = require('events');
var eventEmitter = new events.EventEmitter();
module.exports = {
getEventEmitter: function () {
return eventEmitter;
}
};
你拥有的代码很好。
如果需要,可以这样简化:
var events = require('events');
var eventEmitter = new events.EventEmitter();
module.exports = eventEmitter;
请注意,虽然这通常工作正常(我经常这样做),但可能会破坏require
模块缓存并最终得到不同的实例。
相关文章:
- NodeJS-readline暂停和恢复事件发射器(逐行读取)
- Javascript事件发射器一次处理多个事件
- 无法模拟在 node.js 中使用事件发射器刺激的类中的函数
- Node.js+Mocha+Should.js如何测试事件发射器抛出的错误
- 事件发射器模式如何在Node,sockets.io中工作
- 如何使对象属性函数成为事件发射器
- 您应该如何从节点中的事件发射器继承
- 其他模块中的节点事件发射器
- Angular 2 ES6/7事件发射器更新其他组件
- 绑定事件发射器上的单个事件
- 在模块之间共享的事件发射器
- 为什么在传递/公开事件发射器时需要包装我的事件发射器的 on 函数
- 事件发射器与在 AngularJs 中更新大型数据集时的$watch
- 如何在node中编写事件发射器.js让你创建一个函数“myFunction”,然后在运行时调用成功或失败
- 将立即调用的函数表达式 (IIFE) 与事件发射器一起使用
- 在扩展事件发射器的 ES6 类定义中设置事件侦听器
- 警告:可能检测到事件发射器内存泄漏.添加了 11 个 AppUp > 听众.使用 emitter.setMaxListe
- 节点.js事件发射器源代码的说明
- 从事件发射器继承的对象不会引发事件
- process.on('uncaughtException')的令人困惑的事件发射器/闭包模式