Trigger
Trigger是一个JavaScript触发器插件,可通过指定频次、指定时间内触发指定的处理函数,使用场景如:限制日志频繁上传、限制ajax频繁调用、错误提醒、网络状态检测等
Kind: global class
Version: 1.0.0
Author: Tango tanwei_yx@126.com
- Trigger
- new Trigger(props)
- instance
- static
- inner
- ~handler :
function
- ~handler :
new Trigger(props)
创建一个触发器实例 frequency/interval 至少传入一个
Param | Type | Description |
---|---|---|
props | Object |
触发器配置 |
props.name | string |
触发器名称 |
props.frequency | number |
[>0]限制频次触发,每隔N次触发 |
props.interval | number |
[>0]限制时间间隔触发(s),每隔N(s)触发 |
props.maxHandlerFrequency | number |
[>0]最多触发次数 |
props.handlerInterval | number |
[>0]距离上次触发时间间隔(s) |
props.firstTrigger | boolean |
是否首次立刻触发 |
Example
new Trigger({
name: '',
frequency: 5,
interval: 30
})
Trigger.create({
name: '',
frequency: 5,
interval: 30
})
trigger.check(data)
检查触发器,条件成立会即可触发处理函数
Kind: instance method of Trigger
Param | Type | Description |
---|---|---|
data | \* |
追加数据,方便触发器执行时获得累加的数据 |
trigger.open()
打开触发器
Kind: instance method of Trigger
trigger.stop()
停止触发器,可通过open重新打开
Kind: instance method of Trigger
trigger.reset(props)
重置触发器,同时也会打开触发器
Kind: instance method of Trigger
Param | Type | Description |
---|---|---|
props | Object |
详情 |
trigger.trigger()
执行触发器处理函数
Kind: instance method of Trigger
trigger.on(handler)
触发器监听事件,条件满足立刻触发处理函数
Kind: instance method of Trigger
Param | Type | Description |
---|---|---|
handler | handler |
处理函数 |
trigger.off(handler)
移除触发器监听事件
Kind: instance method of Trigger
Param | Type | Description |
---|---|---|
handler | function |
处理函数 |
Trigger.checkConfig(props) ⇒ boolean
检查触发器配置是否有效
Kind: static method of Trigger
Param | Type | Description |
---|---|---|
props | Object |
详情 |
Trigger.create(props)
创建一个触发器实例
Kind: static method of Trigger
Param | Type | Description |
---|---|---|
props | Object |
详情 |
Trigger.each()
遍历所有触发器实例
Kind: static method of Trigger
Trigger.resetAll()
重置所有触发器实例,同时也会打开触发器
Kind: static method of Trigger
Trigger.openAll()
打开所有触发器实例
Kind: static method of Trigger
Trigger.stopAll()
停止所有触发器实例
Kind: static method of Trigger
Trigger.removeAll()
移除所有触发器实例
Kind: static method of Trigger
Trigger~handler : function
触发器监听事件处理函数
Kind: inner typedef of Trigger
Param | Type | Description |
---|---|---|
handlerCounter | number |
触发次数统计 |
startTime | Date |
开始时间 |
endTime | Date |
结束时间 |
duration | number |
持续时长(ms) |
data | Array.<Object> |
追加数据,每次check进行传入 |