nodejs之事件触发

来源:互联网 发布:淘宝司法拍卖网首页 编辑:程序博客网 时间:2024/05/21 14:03

nodejs事件触发就是对指定事件的绑定之后,再一次的对事件进行触发的过程,在此过程中可以指定绑定哪个事件,又或者是移除哪个事件,指定事件的触发次数。

用个栗子来讲述一下:


//引入事件模块
var events = require("events");
//声明事件触发器
var eventEmitter = new events.EventEmitter();
//监听器#1
var listener1 = function listener1(){
console.log("监听器listener1执行");

}
//监听器#2
var listener2 = function listener2(){
console.log("监听器listener2执行");
}
//绑定connection事件,处理函数为listener1
eventEmitter.addListener('connection',listener1);


//绑定connection事件,处理函数为listener2
eventEmitter.on('connection',listener2);




var eventListeners = require('events').EventEmitter.listenerCount(eventEmitter,'connection');
console.log(eventListeners+"个监听器监听连接事件");




//处理connection事件
eventEmitter.emit('connection');


//移除监绑定的listener1函数
eventEmitter.removeListener('connection',listener1);
console.log("listener1不再受监听");




//触发连接事件
eventEmitter.emit('connection');


eventListeners = require('events').EventEmitter.listenerCount(eventEmitter,'connection');
console.log(eventListeners+'个监听器监听连接事件');


console.log("程序执行完毕");





通过上述的栗子可以看到,绑定时间有两种办法,一种是addListener(),另一种是on。触发事件是emit。移除监听事件为removeListener()。


require('events').EvenetEmitter.listenerCout();可以获取监听的个数












































原创粉丝点击