vue里封装的节流防抖文件

vue里封装的节流防抖文件需求 控制用户对按钮得不断地点击 因为点击按钮会不断地发请求 加重网络负担 对此进行优化节流防抖的代码转载 https blog csdn net weixin article details 节流防抖写成一个公用的 js 文件 这是一种思维 尽量把一些公用的提取为 js 文件 所有 vue 组件都可以进行引入 让我们的代码更规范 更好看 可维护性更高 为此我

需求:控制用户对按钮得不断地点击,因为点击按钮会不断地发请求,加重网络负担,对此进行优化

节流防抖的代码转载 https://blog.csdn.net/weixin_/article/details/

1、节流防抖写成一个公用的js文件(这是一种思维,尽量把一些公用的提取为js文件,所有vue组件都可以进行引入,让我们的代码更规范、更好看、可维护性更高,为此我还在不断地努力)

/ * 函数防抖 (只执行最后一次点击) * @param fn * @param delay * @returns {Function} * @constructor */ export const Debounce = (fn, t) => { let delay = t || 500; let timer; console.log(fn) console.log(typeof fn) return function () { let args = arguments; if(timer){ clearTimeout(timer); } timer = setTimeout(() => { timer = null; fn.apply(this, args); }, delay); } }; / * 函数节流 * @param fn * @param interval * @returns {Function} * @constructor */ export const Throttle = (fn, t) => { let last; let timer; let interval = t || 500; return function () { let args = arguments; let now = +new Date(); if (last && now - last < interval) { clearTimeout(timer); timer = setTimeout(() => { last = now; fn.apply(this, args); }, interval); } else { last = now; fn.apply(this, args); } } }

2、vue组件里引入节流防抖文件(路径需要根据自己的情况)

import {Debounce} from "../../../service/utils/public";

 用户如果对按钮进行多次点击,只针对最后一次的点击发送请求

methods:{ changeStatus:Debounce(function(row){ APIService.changeMsg({msg_id:row.msg_id,status:0}).then((data)=>{ this.teacherGetMsg();//点击按钮后的逻辑代码存放的方法 }).catch((error)=>{ console.log('error请求失败',error) }) },500), }

学习的过程中,肯定会遇到大大小小的问题,很庆幸,这些问题都成为我们成长的垫脚石,不要怕遇到问题,办法总比困难多,总有一刻,就顿悟了

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/214367.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 下午4:26
下一篇 2026年3月18日 下午4:26


相关推荐

  • R语言差异检验:t检验「建议收藏」

    R语言差异检验:t检验「建议收藏」文章目录@[toc]单样本t检验适用条件具体计算公式R语言示例独立样本t检验适用条件具体计算公式R语言示例配对样本t检验适用条件具体计算公式R语言示例t检验(studentt检验)是应用t分布的特征,将t作为检验的统计量来进行统计推断方法。它对样本要求较小(例如n<30)。主要用途:样本均数与总体均数的差异比较两样本均数的差异比较分类:单样本t检验独立样本t检验配对样本t…

    2022年6月19日
    32
  • tcp 校验和_tcp如何保证有序

    tcp 校验和_tcp如何保证有序1.tcp校验和接收方在接收数据时检验数据包在传输过程中是否改变的验证方式发送方将数据体取反码,检验和也取反码相加,高于4bit的和低于4bit的相加,得到的就是校验和,保存在tcp头的校验和字段,接收方将数据取反码,校验和取反码,相加为1111则数据包没有异常,否则丢弃数据包。参考此文2.为什么Internet协议:IP,ICMP,IGMP,UDP,TCP收到有…

    2025年7月1日
    7
  • R、RStudio下载与安装方法

    R、RStudio下载与安装方法现如今,R语言是统计领域广泛使用的工具,是属于GNU系统的一个自由、免费、源代码开放的软件,是用于统计计算和统计绘图的优秀工具。而RStudio是R的集成开发环境,用它进行R编程的学习和实践会更加轻松和方便。下面就教大家如何下载并安装R和RStudio,比较简单。R的维护工作由一个国际化的开发者团队负责。R软件的官方下载页面叫作TheComprehensiveRArchiveNetwor…

    2022年6月30日
    49
  • AI辅助编程工具Cursor安装、配置及使用教程

    AI辅助编程工具Cursor安装、配置及使用教程

    2026年3月16日
    4
  • 腾讯元宝生态整合攻略:微信生态打通与全平台协作技巧

    腾讯元宝生态整合攻略:微信生态打通与全平台协作技巧

    2026年3月13日
    3
  • 软件架构介绍

    软件架构介绍软件架构介绍

    2022年4月22日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号