您的位置:首页 > Web前端 > Node.js

打造熟悉自己EventEmitter

2014-07-08 00:00 92 查看
摘要: 基于事件是nodejs一大特色,很多模块就是继承于EventEmitter,例如http, filesystem等等。基于事件可以很好把异步转化为同步,避免了很多不必要的麻烦.....

直接贴代码:

/**
* make my EventEmitter
* @cjp  2014-07-08
*/
var util = require("util");
//require events模块,包含EventEmitter方法
var events = require("events");

//创建一个类
function MyEvent() {
events.EventEmitter.call(this);
}

//利用util模块使MyEvent继承EventEmitter
util.inherits(MyEvent, events.EventEmitter);

//原型继承方法
MyEvent.prototype.write = function(info) {
//emit触发绑定的data事件
this.emit("data", info);
}

//实例化MyEvent类
var myEvent = new MyEvent();

//on 注册绑定事件,并命名事件名为data
myEvent.on("data", function(info) {
console.log(‘Get info: "' + info + '"');
})

//调用方法
myEvent.write("It works!"); // Get info: "It works!"


继承events.EventEmitter就可打造个人EventEmitter。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息