当前位置: 首页 > 后端技术 > Node.js

关于Node.js事件订阅发布

时间:2023-04-03 13:06:17 Node.js

一、Node事件订阅发布1、EventEmitterNode中的很多模块都可以使用EventEmitter。有了EventEmitter才能方便的进行事件监听。让我们看看如何在Node.js中使用EventEmitter。(1)基本使用EventEmitter是对事件触发和事件监听功能的封装。在node.js中的事件模块中,事件模块中只有一个对象,就是EventEmitter。下面是最基本的使用方法:varEventEmitter=require('events').EventEmitter;varevent=newEventEmitter();event.on('some_event',function(){console.log('some_event事件触发');});setTimeout(function(){event.emit('some_event');},1000);上面的代码中,首先实例化了一个EventEimitter对象,然后就可以监听并释放事件了。通过on方法监听具体事件,通过emit方法发布事件。1秒后发布一个“some_event”事件。此时on会自动监听到事件对象,并触发相应的回调方法。(2)EventEmitter支持的方法EventEmitter实例对象支持的方法列表如下:emitter.on(name,f)//为事件名指定监听函数femitter.once(name,f)//类似到on方法,但是监听函数f是一次性的,用完会自动移除。emitter.listeners(name)//返回一个数组,其成员为事件名的所有监听函数emitter.removeListener(name,f)//移除事件名(name)的监听函数femitter.removeAllListeners//移除所有监听事件名称的函数...同时,事件发布的emit方法可以传入多个参数,第一个参数为定义的事件,其他参数会作为参数传递到该事件的回调函数中听众。事件监控和发布