博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nodejs之事件处理机制(抛出事件、监听事件)
阅读量:4290 次
发布时间:2019-05-27

本文共 1358 字,大约阅读时间需要 4 分钟。

程序运行到一定阶段的时候会发出一个消息,对这个消息进行监听,作出响应;

==========================================

***************创建服务器

var http = require('http');var fs = require('fs');var url = require('url');var uesrBean=require('./models/userEvent');//吧userEvent.js中的UserBean引用过来,用一个参数接收http.createServer(function (request, response) {  response.writeHead(200, {'Content-Type': 'text/html'});   var pathname = url.parse(request.url).pathname;if(pathname!="/favicon.ico"){  pathname=pathname.replace(/\//,"");// 吧/去掉  user=new uesrBean();//创建一个对象  user.eventEmit.once('zhuceS',function(uname,pwd){  //对zhuceS这个事件标识监听一次,给一个回调,这里的回调中的uname和pwd是被监听的zhuceS提供 的参数      response.write('注册成功');      user.login(request,response);//调用登陆的方法      response.end('');    });user.zhuce(request,response);//调用zhuce的方法,在zhuce方法中会抛出一个事件消息,上面对抛出的zhuceS事件消息监听一次   }}).listen(8000);console.log('Server running at http://127.0.0.1:8000/');

**********************事件***********

var events=require('events');function UserBean(){  this.eventEmit=new events.EventEmitter();//实例化时间发生器  this.zhuce=function(req,res){    console.log('注册');    req['uname']='a';    req['pwd']='b';    this.eventEmit.emit('zhuceS','aa','bb');//抛出事件消息,zhuceS是事件标识,会被监听,aa和bb是参数,这里的参数在监听的方法中会接收参数;  };  this.login=function(req,res){console.log('登陆');res.write(req['uname']);res.write(req['pwd']);res.write('登陆');  };}module.exports=UserBean;

转载地址:http://ynmgi.baihongyu.com/

你可能感兴趣的文章
apache 配置不同的端口访问不同的站点
查看>>
2017年3月Java9带来的革新!
查看>>
Log4j容器深入探究
查看>>
记glide框架使用中所遇到的问题
查看>>
学习AOP之透过Spring的Ioc理解Advisor
查看>>
Jquery一个简单的注册验证
查看>>
SpringMVC基础_ControllerAdvice
查看>>
Toast还能显示图片你知道么?
查看>>
安卓三状态切换按钮TriStateToggleButton
查看>>
Spring框架-AOP细节
查看>>
java.lang.Instrument 代理Agent使用
查看>>
Javascript:指针、帽子和女朋友
查看>>
Android中的ALERTDIALOG使用_优就业
查看>>
java使用javacsv读取csv文件 导入Mysql数据库
查看>>
Toolbar 不为人知的助手,ActionMenuView
查看>>
Java回调方法详解
查看>>
如何获取url中的参数并传递给iframe中的报表
查看>>
以前端架构师的思想看问题:解决单页应用,系统角色请求抢占session发送请求问题
查看>>
jsessionid问题解决方案
查看>>
MySQL和Oracle的delete,truncate
查看>>