eventEmitte是什么
eventEmitter是一个对事件进行监听的对象,
说白了就是为事件写回调函数,
当触发一个事件执行后,
会执行为该事件绑定的回调函数。
Node采纳了事件驱动机制,而EventEmitter就是Node实现事件驱动的根底
Node的events模块只提供了一个EventEmitter类,
这个类实现了Node异步事件驱动架构的基本模式——观察者模式
手动实现eventEmitte
class EventEmitter{ constructor(){ this.handler={}; } on(eventName,callback){ if(!this.handles[eventName]){ this.handles[eventName]=[]; } this.handles[eventName].push(callback); } emit(eventName,...arg){ if(this.handles[eventName]){ for(var i=0;i<this.handles[eventName].length;i++){ this.handles[eventName][i](...arg); } }}调用let event = new EventEmitter();event.on('click',function(str){ console.log(str);});event.emit('click','Yeah!');//输入Yeah!