Node.js中,很多对象会发出事件。如,fs.readStream打开文件时会发出一个事件。 所有发出事件的对象都是events.EventEmitter的实例,可以通过require("event");获得event模块。**函数(listeners ...
Node.js中,很多对象会发出事件。如,fs.readStream打开文件时会发出一个事件。
所有发出事件的对象都是events.EventEmitter的实例,可以通过require("event");获得event模块。
**函数(listeners)可以添加给对象,对象发出事件时,对应的函数就会被执行。在**函数中,this引用的是它(**函数)
一、Class:events.EventEmitter
通过require('events').EventEmitter得到EventEmitter类。
当EventEmitter对象遇到错误时,通常会触发error事件。error事件在Nodejs中是一种特殊情况,如果没有**,那么默认会打印出栈**并退出程序。
二、添加**
为事件绑定事件处理程序,可以用emitter.addListener(event,listener)和emitter.on(event,listener),它们作用完全一样。传入参数是事件(event)和处理函数(listener)。
demo:test1.js内容如下
var http = require('http');var server = http.createServer();// 为request事件绑定处理函数// 也可以使用server.addListenerserver.on('request', function(req, res) { res.writeHead(200, { 'Content-Type': 'text/plain' }); res.write('shiyanlou'); console.log('shiyanlou'); res.end();});server.listen(1337, '127.0.0.1');console.log('Server running at http://127.0.0.1:1337/');
原标题:nodejs模块——Event模块
关键词:JS
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。