更新记录

1.0.0(2023-11-24)

first commit


平台兼容性

防抖节流 重复点击 频繁触发

本文档仅做简单的功能介绍和使用,有特殊需求或需要参考情况请自行下载查看
此处介绍不多,更多内容写到封装的文件代码注释中(方便项目使用时快速查阅)

传参与this对象全都提前预置了,看需要是否保留

对于需求不满足可自行在此基础上改造扩展,也可把更好的代码留在评论区供大家学习参考

个人理解(函数适用场景)

防抖:N秒内的多次触发仅执行最后一次
节流:N秒内仅执行第一次

防抖场景:频繁触发事件如:change,缩减事件的触发频率
节流场景:按钮多次点击如:click,避免重复点击造成的接口的重复调用

js方式的使用方法

// 方法引入
import {
        debounced,
        throttle
    } from "../../common/防抖节流/leejs_debounced_throttle.js"
// 方法调用
        methods: {
            // 使用方法debounced,throttle
            leeBtnClick: throttle(function(pageParam) {
                console.log(this.title, pageParam)
                console.log("执行需要触发事件得函数方法")
            }, 3000),
            leeBtnClickD: debounced(function(pageParam) {
                console.log(this.title, pageParam)
                console.log("执行需要触发事件得函数方法")
            }, 3000),
        }

ts方式的使用方法

// 方法引入
    import { Throttle, Debounced } from "../../common/防抖节流/leets_debounced_throttle"

    let deb : Function = new Debounced().useFn(testFun, 3000) // New一个防抖对象
    let thr : Function = new Throttle().useFn(testFun, 3000) // New一个节流对象

    function leeBtnClick(val) {
        console.log(val)
        val === 11 ? deb() : thr()
    }
    function testFun() {

    }

隐私、权限声明

1. 本插件需要申请的系统权限列表:

啥也没有

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

啥也没有

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

啥也没有

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问