node.js中的events.emitter.once方法使用说明
方法说明:
为指定事件注册一个单次监听器,所以监听器至多只会触发一次,触发后立即解除该监听器。
语法:
emitter.once(event,listener)
接收参数:
event (string) 事件类型
listener (function) 触发事件时的回调函数
例子:
server.once('connection',function(stream){
console.log('Ah,wehaveourfirstuser!');
});
源码:
EventEmitter.prototype.once=function(type,listener){
if(!util.isFunction(listener))
throwTypeError('listenermustbeafunction');
functiong(){
this.removeListener(type,g);
listener.apply(this,arguments);
}
g.listener=listener;
this.on(type,g);
returnthis;
};