1.0.0 • Published 3 years ago

js-events-emitter v1.0.0

Weekly downloads
-
License
MIT
Repository
-
Last release
3 years ago

简介

javascript 订阅事件和发布事件类

  • 相对于 EventEmitter 这个库可以传 this,改变回调 this 指向

起步

npm i js-events-emitter -S

使用

const JsEventsEmitter= require('js-events-emitter')
// 或
import JsEventsEmitter from 'js-events-emitter'

const events = new JsEventsEmitter()

let _this = new Object()

events.on('custom-event', _this, callbackFunc, ['附加参数1', '附加参数2'])

events.emit('custom-event', ['附加参数3', '附加参数4'])

function callbackFunc(param1, param2, param3, param4) {
  console.log(param1, param2, param3, param4) //'附加参数1', '附加参数2','附加参数3', '附加参数4'
  console.log(this) // this === _this
}

JsEventsEmitter

  • 详情: 订阅事件和发布事件

方法

on

  • 详情: 订阅事件
参数类型默认值描述
typestring事件名
scope*作用域
callbackfunction回调
paramsarray[]回调参数

once

  • 详情: 订阅事件-回调只执行一次
参数类型默认值描述
typestring事件名
scope*作用域
callbackfunction回调
paramsarray[]回调参数

emit

  • 详情: 发布事件
参数类型默认值描述
typestring
paramsarray[]附加到回调的参数

getListener

  • 详情: 获取指定事件的监听器数组列表
参数类型默认值描述
typestring事件名
  • 返回:array|undefined- 返回列表

getListenerList

  • 详情: 获取全部事件的全部监听者的列表

  • 返回:object


getEventNames

  • 详情: 获取已经监听的事件名列表

  • 返回:array- 事件名数组


addListener

  • 详情: 添加到事件等待处理触发列表
参数类型默认值描述
typestring
listenerParamsobject{ callback: null, scope: this, params: null, isOnce: false }触发事件的参数

offAll

  • 详情: 清除所有订阅
参数类型默认值描述
typestring,null事件名, 如果指定事件则移除该事件的所有监听器,如果不传则移除所有事件的所有监听器,并注销事件

off

  • 详情: 清除对应的订阅
参数类型默认值描述
typestring事件名
removeCallbackfunction监听器的回调函数