nodeJS基础四 事件

event

概念

1.Node中的event没有默认行为和事件冒泡
2.const EventEmitter = require('events'); //返回一个类
3.通常我们需要继承EventEmitter 来实现事件
4.一个EventEmitter 对象默认最大可以有10个监听,可以通过emitter.setMaxListeners()来设置最大监听数
5.大多数Nde.js 核心对象都继承实践类

添加监听

1.emitter.addListener(enentName,listener)
2.emitter.on(eventName,listener)
3.emitter.once(eventName,listener)
注意点
和浏览器端事件不同,监听函数的第一个参数就是触发时传入的参数而不是event对象
emitter.addListener和emitter.on是同一个方法

触发事件

emitter.emit(eventName[,...args])
注意点
和浏览器端的事件不同,传入参数不用数组而是参数列表

移除事件

emitter.removeListener(eventName,listenner)
emitter.off(eventName,listenner)
注意点
emitter.removeListener是同一个方法
emitter.off()必须node版本大于V10.0.0

      const EventEmitter = require('events');
      class myEmitter extends EventEmitter{

      }
      let myEmitters = new myEmitter();
      let list = ['1','2'];
      myEmitters.setMaxListeners(5)
      myEmitters.addListener('text',(...arg)=>{
          console.log(...arg);
          console.log('events addListener')
      })
      myEmitters.emit('text','aa','bb',list);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容