01 events 常用方法
js
const EventEmitter = require('events');
// 1.创建一个emitter 发射器
const emitter = new EventEmitter()
// 2.监听某个事件
// addListener 是 on alias简写
// on alias
const listener = (arg) => {
console.log('msg', arg)
}
emitter.on('login', listener)
// 3.发射login事件
emitter.emit('login', 'hello world')
// 4.取消监听
emitter.off('login', listener)
02 events 不常用方法
js
const EventEmitter = require('events');
// 1.创建一个emitter 发射器
const emitter = new EventEmitter()
// 2.监听某个事件
// addListener 是 on alias简写
// on alias
const listener = (arg) => {
console.log('msg', arg)
}
emitter.once('login', listener) //仅仅监听一次
emitter.prependListener('click', listener) //添加一个监听放在最前面
emitter.prependOnceListener('click', listener) //添加一个监听放在最前面 并且只监听一次
emitter.removeAllListeners() //移出所有监听器
03 events 获取信息
js
const EventEmitter = require('events');
// 1.创建一个emitter 发射器
const emitter = new EventEmitter()
// 2.监听某个事件
// addListener 是 on alias简写
// on alias
const listener = (arg) => {
console.log('msg', arg)
}
emitter.on('login', listener)
emitter.on('tap', listener)
// 3.发射login事件
emitter.emit('login', 'hello world')
// 获取注册事件
console.log('获取注册事件', emitter.eventNames()) //获取注册事件 [ 'login', 'tap' ]
//
console.log('获取事件发生次数', emitter.listenerCount('login')) //获取事件发生次数 1
console.log('获取文件listener', emitter.listeners('login')) //获取文件listener [ [Function: listener] ]