方法说明:
为指定事件注册一个 单次 监听器,所以监听器至多只会触发一次,触发后立即解除该监听器。
语法:
emitter.once(event, listener)
接收参数:
event (string) 事件类型
listener (function) 触发事件时的回调函数
例子:
server.once('connection', function (stream) { console.log('Ah, we have our first user!'); });
源码:
EventEmitter.prototype.once = function(type, listener) { if (!util.isFunction(listener)) throw TypeError('listener must be a function'); function g() { this.removeListener(type, g); listener.apply(this, arguments); } g.listener = listener; this.on(type, g); return this; };