💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
[TOC] # 插件emitter事件管理器 某些特殊的使用场景可能需要监听一些自定义的事件,这种场合可以用emitter处理更加方便 这个库使用非常简单,好像没有啥可以说的 ```javascript // 一个简单的event bus var emmiter = v.emitter() // 给某个对象加上event bus 的 buff var emmiter = v.emitter(object) ``` ## 一个完整的例子 这个例子实现一个人的 ```javascript var person = {name:'vace',age:18} var emiiter = v.emitter(person) // 监听说话事件 emiiter.on('say',function(say){ console.log('说了:',say) }) // 触发吧 emiiter.emit('say','hello') ``` ## API 所有的方法都支持链式调用 基本api包括 * [`on`](#onname-handler) * [`once`](#oncename-handler) * [`off`](#offname-handler) * [`emit`](#emitname-arguments) ### .on(name, handler) 给新的或者已经存在而事件新增一个监听回调 ```javascript emitter.on('move',function(){ console.log('移动了') }) ``` ### .once(name, handler) 事件触发一次后就停止了,也就是handler只会被调用一次 ### .off(name[, handler]) 关闭某个事件的监听函数,或者移除所有的监听函数 ```javascript // 关闭某个 emitter.off('name', handler) // 关闭所有 emitter.off('name') ``` ### .emit(name[, arguments]) 触发自定义的事件 ```javascript emitter.emit('name') ``` 可以带参数的喔 ```javascript emitter.emit('name', 1, '2', [3], {}) ```