nodejs系列学习:事件发射器EventEmitter与android中的eventBus对比-----(四)

来源:互联网 发布:定时启动程序软件 编辑:程序博客网 时间:2024/05/02 20:50

先扯下android中的事件的发布与订阅框架eventBus,也就分三部初始化、注册订阅事件、发布事件。nodejs的发射器跟eventBus都是这个步骤。

1、上个最简单的

var  http  =  require('http');var events = require('events');//B1创建一个事件发射器   事件初始化var ee=  new events.EventEmitter();//B2注册监听器          事件的订阅ee.on('connect',function(){    console.log("有个连接");});var server= http.createServer(function(req,res){//B3发射  发布ee.emit('connect');res.write('hello');res.end();});server.listen(9003); 

这里有B1:事件初始化,B2:事件的订阅on或者addListener传人2个参数一个是键,一个是回调函数,B3:发布emit

2、跑起

node  server.js

http://localhost:9003/

3、删除所有与删除某个removeAllListeners

var  http  =  require('http');var events = require('events');//B1创建一个事件发射器   事件初始化var ee=  new events.EventEmitter();var connectfun=function(){    console.log("有个连接");}//B2注册监听器          事件的订阅ee.on('connect',connectfun);var server= http.createServer(function(req,res){//B3发射  发布ee.emit('connect');ee.removeListener('connect',connectfun);//ee.removeAllListeners('connect');res.write('hello');res.end();});server.listen(9003); 

重复请求看差别

0 0