node.js – 如何在NodeJS EventEmitter中删除所有事件侦听器?

如何在NodeJS中删除所有事件侦听器?

解决方法

也许最简单的方法就是用一个没有注册侦听器的新对象替换eventEmitter对象.

如果您确实需要清除所有已注册的事件,因为其他代码具有对当前发射器对象的引用,那么您可以使用公共API执行此操作,如下所示:

emitter.removeAllListeners();

node.js doc here中描述了该函数.该函数可以传递事件名称以仅删除该事件的所有侦听器,或者,如果未传递任何事件名称,则删除所有事件的所有侦听器.

仅供参考,您还可以使用emitter.eventNames()方法获取具有任何已注册事件处理程序的所有事件名称,然后您可以使用emitter.removeAllListeners(eventName)删除任何给定事件名称的所有侦听器.因此,您还可以遍历所有事件名称删除所有任何想要的侦听器.

相关文章

这篇文章主要介绍“基于nodejs的ssh2怎么实现自动化部署”的...
本文小编为大家详细介绍“nodejs怎么实现目录不存在自动创建...
这篇“如何把nodejs数据传到前端”文章的知识点大部分人都不...
本文小编为大家详细介绍“nodejs如何实现定时删除文件”,内...
这篇文章主要讲解了“nodejs安装模块卡住不动怎么解决”,文...
今天小编给大家分享一下如何检测nodejs有没有安装成功的相关...