关于业务事件的降频处理和ajax的降频处理

降频处理简介

程序为了防止用户频繁触发这个事件,通常必须使用降频处理限制监听函数的执行代码的执行频率
业务逻辑事件的降频处理

业务逻辑事件降频用途
限制用户触发该事件的触发频率,防止监听函数的执行代码被频繁执行而导致bug
1.设置一个频率属性
2.频率属性默认true
3.当事件触发时为false
4.触发后使用settimeout创建的回调函数执行需要执行的代码
5.当settimeout的回调函数将代码执行完毕后再恢复true
6.timeout的管理
(1)timeout的秒数写在变量,当前组件的所有事件的timeout共用同一个秒数,利于维护
(2)不同的事件的timeout对象的引用存储于不同的timeout变量,便于clearTimeout清除
(3)timeout对象利用将函数调用执行完毕之后,函数执行完毕时必须及时使用clearTimeout清除执行这个回调函数的timeout对象,及时释放栈内存

降频应用场景

凡是h5触摸或移动的及时响应事件需要及时监听处理外,其他的click点击/swiper滑动/滚动条滑动的上拉刷新/滚动条滑动的下拉加载均需要做降频处理,防止事件监听函数的逻辑处理代码被频繁执行

降频处理案例代码

关于业务事件的降频处理和ajax的降频处理

关于业务事件的降频处理和ajax的降频处理

 

 

ajax跨域请求的降频处理

用途:防止请求重复数据

1.设置ajax请求状态属性 默认true

2.为请求接口的调用设置调用限制,请求状态为true时才调用

3.调用请求接口发送ajax请求时更新为false

4.调用请求接口请求的ajax请求成功时重置为true

关于业务事件的降频处理和ajax的降频处理

 

关于业务事件的降频处理和ajax的降频处理

 

关于业务事件的降频处理和ajax的降频处理