当前位置: 首页 > news >正文

vue3防抖函数封装与使用,以指令的形式使用

utils/debounce.js

/*** 防抖函数* @param {*} fn 函数* @param {*} delay 暂停时间* @returns */
export function debounce(fn, delay = 500) {let timer = nullreturn function (...args) {// console.log(arguments);// const args = Array.from(arguments)if (timer) {clearTimeout(timer)}timer = setTimeout(() => {fn.apply(this, args)}, delay)}}

main.js 定义全局化指令

import { createApp } from 'vue'
import App from './App.vue'
import { debounce } from './utils/debounce'const app = createApp(App)// 创建全局指令
app.directive('debounce', {mounted(el, binding) {const { value, arg } = bindingconst debouncedFn = debounce(value, arg)el.addEventListener('click', debouncedFn) // 将事件改为click},beforeUnmount(el, binding) {const { value } = bindingel.removeEventListener('click', value)}
})app.mount('#app')

指令的使用

<template><button v-debounce="handleInput" :delay="500">无参</button><button v-debounce="() => handleInput2(1, 2)" :delay="500">传参</button>
</template>
<script>export default{methods: {handleInput(){console.log('防抖指令的使用');},handleInput2(v1, v2){console.log('接收参数', v1,v2);},}}
</script>

相关文章:

vue3防抖函数封装与使用,以指令的形式使用

utils/debounce.js /*** 防抖函数* param {*} fn 函数* param {*} delay 暂停时间* returns */ export function debounce(fn, delay 500) {let timer nullreturn function (...args) {// console.log(arguments);// const args Array.from(arguments)if (timer) {clearTim…...

Hive学习(13)lag和lead函数取偏移量

hive里面lag函数 在数据处理和分析中&#xff0c;窗口函数是一种重要的技术&#xff0c;用于在数据集中执行聚合和分析操作。Hive作为一种大数据处理框架&#xff0c;也提供了窗口函数的支持。在Hive中&#xff0c;Lag函数是一种常用的窗口函数&#xff0c;可以用于计算前一行…...

Centos Unable to verify the graphical display setup

ERROR: Unable to verify the graphical display setup. 在Linux下安装Oracle时 运行 ./runInstaller 报错 ERROR: Unable to verify the graphical display setup. This application requires X display. Make sure that xdpyinfo exist under PATH variable. No X11 DISPL…...

Java 说一下 synchronized 底层实现原理?

Java 说一下 synchronized 底层实现原理&#xff1f; synchronized 是 Java 中用于实现同步的关键字&#xff0c;它保证了多个线程对共享资源的互斥访问。底层实现涉及到对象头的 Mark Word 和锁升级过程。 synchronized 可以用于方法上或代码块上&#xff0c;分别对应于方法…...

nginx访问路径匹配方法

目录 一&#xff1a;匹配方法 二&#xff1a;location使用: 三&#xff1a;rewrite使用 一&#xff1a;匹配方法 location和rewrite是两个用于处理请求的重要模块&#xff0c;它们都可以根据请求的路径进行匹配和处理。 二&#xff1a;location使用: 1&#xff1a;简单匹配…...

偌依 项目部署及上线步骤

准备实验环境&#xff0c;准备3台机器 1.作为前端服务器&#xff0c;mysql,redis服务器--同时临时作为代码打包服务器 192.168.2.65 nginx-server 2.作为后端服务器 192.168.2.66 java-server-1 192.168.2.67 java-server-2 安装nginx/mysql #安装nginx [rootweb-nginx ~]…...

PHP特性知识点扫盲 - 上篇

概述 之前在分析thinkphp源码的时候&#xff0c;对依赖注入等等php高级的特性一直想做一个梳理和总结&#xff0c;一直没有时间&#xff0c;好不容易抽一点时间对技术的盲点做一个扫盲和总结。 特性 1.命名空间 命名空间是在PHP5.3中引入&#xff0c;是一个很重要的工具&am…...

Docker一键极速安装Nacos,并配置数据库!

1 部署方式 1.1 DockerHub javaedgeJavaEdgedeMac-mini ~ % docker run --name nacos \ -e MODEstandalone \ -e JVM_XMS128m \ -e JVM_XMX128m \ -e JVM_XMN64m \ -e JVM_MS64m \ -e JVM_MMS64m \ -p 8848:8848 \ -d nacos/nacos-server:v2.2.3 a624c64a1a25ad2d15908a67316d…...

交换机04_远程连接

通过远程管理方式连接交换机 1、telnet简介 telnet 是应用层协议 基于传输层TCP协议的&#xff0c;默认端口&#xff1a;23 采用的是明文密码方式 不是很安全&#xff0c;一般用于内网管理。 2、ssh协议简介 ssh 是应用层的协议&#xff0c;基于传输层的TCP协议&#x…...

ES6定义一个类(函数内部定义属性,,原型定义方法 ), 实现继承?

ES6中使用class关键字定义一个类&#xff0c;使用extends关键字实现继承。下面是一个示例&#xff1a; class Animal {constructor(name) {this.name name;}sayHello() {console.log(Hello, my name is ${this.name});} }class Dog extends Animal {constructor(name, breed)…...

使用 Process Explorer 和 Windbg 排查软件线程堵塞案例分享

目录 1、问题说明 2、线程堵塞的可能原因分析 3、使用Windbg和Process Explorer确定线程中发生了死循环 4、根据Windbg中显示的函数调用堆栈去查看源码&#xff0c;找到问题 4.1、在Windbg定位发生死循环的函数的方法 4.2、在Windbg中查看变量的值去辅助分析 4.3、是循环…...

“智慧”千里眼助力水泵站

泵站是为水提供势能和压能&#xff0c;解决无自流条件下的排灌、供水和水资源调配问题的唯一动力来源&#xff0c;在工农业用水、防洪、排涝和抗旱减灾等方面发挥着重要作用。一旦出现异常&#xff0c;对经济生产将造成难以估量的损失&#xff0c;给水利安全管理造成负担。因此…...

C++多态性——(5)运算符重载(第二节)

归纳编程学习的感悟&#xff0c; 记录奋斗路上的点滴&#xff0c; 希望能帮到一样刻苦的你&#xff01; 如有不足欢迎指正&#xff01; 共同学习交流&#xff01; &#x1f30e;欢迎各位→点赞 &#x1f44d; 收藏⭐ 留言​&#x1f4dd; 身先才能率人&#xff0c;律己才能服人…...

ES -极客学习

Elasticsearch 简介及其发展历史 起源 Lucene 于 Java 语言开发的搜索引擎库类创建于 1999 年&#xff0c;2005 年成为 Apache 顶级开源项目Lucene 具有高性能、易扩展的优点Lucene 的局限性 只能基于 Java 语言开发类库的接口学习曲线陡峭原生并不支持水平扩展原生并不支持水…...

【大厂秘籍】系列 - Java多线程面试题

Java多线程面试题 友情提示&#xff0c;看完此文&#xff0c;在Java多线程这块&#xff0c;基本上可以吊打面试官了 线程和进程的区别 进程是资源分配的最小单位&#xff0c;线程是CPU调度的最小单位 线程是进程的子集&#xff0c;一个进程可以有很多线程&#xff0c;每条线…...

vue实现画笔回放,canvas转视频播放功能

示例图&#xff1a; 一、vue2版本 <template><div class"canvas-video"><canvasref"myCanvasByVideo"class"myCanvas"id"myCanvasByVideo":width"width":height"height"></canvas><d…...

Docker中镜像的相关操作

1.辅助操作 docker version&#xff1a;用查看docker客户端引擎和server端引擎版本信息。 docker info&#xff1a;用来查看docker引擎的详细信息。 docker --help&#xff1a;用来查看帮助信息。 2.镜像Image docker images&#xff1a;查看当前本地仓库中存在哪些镜像。 …...

[python]python利用pyaudio录制系统声音没有立体声混音怎么录制系统音频

当电脑没有立体声混音导致Python写代码无法使用pyaudio进行录制系统声音怎么办&#xff1f;查阅资料和安装驱动等方法都不行&#xff0c;难道没办法了吗&#xff1f;那为什么电脑其他软件可以做到呢&#xff1f;因此研究了一下pyaudio在没有立体声混音情况下确实无法录制声音&a…...

使用echarts的bmap配置项绘制区域轮廓遮罩

示例图 代码 <template><div id"map" style"width: 100%; height: 100vh"></div> </template><script> import * as echarts from "echarts"; import "echarts/extension/bmap/bmap"; export default…...

第3章 【课后习题】(完整版)

【3.18】写出下面程序的运行结果 //3.18写出下面程序的运行结果 #include <iostream> using namespace std; class test{public:test();~test() {};private:int i; }; test::test() {i25;for(int ctr0;ctr<10;ctr){cout<<"Counting at "<<ctr…...

Galaxea R1仿人机器人硬件架构与控制系统解析

1. Galaxea R1机器人硬件架构解析Galaxea R1是一款专为家庭服务场景设计的仿人机器人平台&#xff0c;其硬件系统经过精心设计以满足复杂环境下的操作需求。作为机器人领域的从业者&#xff0c;我在实际测试中发现这套硬件架构在负载能力、运动灵活性和环境感知三个关键维度上达…...

混排稿交上去,最怕字数对不上

混排稿交上去&#xff0c;最怕字数对不上 限 5000 字&#xff0c;Word 里一个数&#xff0c;网页后台又一个数&#xff0c;翻译那边还跟你聊「按字符」——挺正常的&#xff0c;不是谁刁难&#xff0c;是各家数「字」的法子本来就不一样。 先打开这个&#xff1a; https://ge…...

Android系统架构中的性能优化与功耗优化策略

在当今快速发展的智能设备领域,尤其是车载系统和鸿蒙生态中,系统架构师的角色至关重要。他们不仅需要设计高复用、可扩展的架构,还需专注于性能优化和功耗优化,以提升用户体验和系统效率。本文将深入探讨在Android系统开发中,如何通过架构设计、底层适配和AI融合来实现性能…...

GitHub Awesome List:OpenClaw机器人抓取学习资源全导航

1. 项目概述&#xff1a;一个汇聚开源AI学习技能的宝藏库最近在GitHub上闲逛&#xff0c;发现了一个名为botlearn-ai/awesome-openclaw-learning-skills的仓库。这个标题乍一看有点长&#xff0c;但拆解一下&#xff0c;信息量巨大。“botlearn-ai”暗示了项目与AI学习相关&…...

C++面向对象编程实验:从封装到多态的实战训练与工程化实践

1. 项目概述与核心价值最近在整理硬盘&#xff0c;翻出来一个老项目——Ayat-Gamal/Cpp_OOP_Labs。这名字一看&#xff0c;就是当年学C面向对象编程&#xff08;OOP&#xff09;时&#xff0c;为了应付课程实验或者自己练习攒下来的代码仓库。这类项目在GitHub上成千上万&#…...

ArcMap打开别人发来的mxd文件,图层全是红叉?别慌,5分钟教你修复数据源链接

ArcMap打开mxd文件图层全是红叉&#xff1f;5步急救与3种预防方案 收到同事发来的ArcMap项目文件&#xff0c;满屏红色感叹号像交通信号灯一样刺眼——这是GIS从业者最熟悉的"心跳加速时刻"。这种数据源断裂问题每年困扰着全球超过60%的ArcMap用户&#xff0c;尤其在…...

Mediapipe手势识别踩坑实录:解决Python 3.10+和OpenCV版本兼容性问题

Mediapipe手势识别实战&#xff1a;Python高版本环境兼容性全指南 当你在Python 3.10或更高版本中尝试运行Mediapipe手势识别项目时&#xff0c;可能会遇到各种令人沮丧的错误。从模块导入失败到函数弃用警告&#xff0c;再到依赖冲突&#xff0c;这些问题往往让开发者陷入无休…...

深度解析JDK Docker镜像构建:从基础镜像选择到容器化Java应用部署

1. 项目概述&#xff1a;一个为特定场景而生的JDK镜像在容器化部署和持续集成/交付&#xff08;CI/CD&#xff09;的实践中&#xff0c;我们经常需要为不同的应用构建和运行环境准备特定的基础镜像。对于Java开发者而言&#xff0c;一个稳定、可靠且经过优化的Java Development…...

2026届学术党必备的AI论文网站实测分析

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 有着依托人工智能技术生成的免费AI论文工具&#xff0c;它为众多高校师生、科研从业者给予了…...

终极指南:如何用apt-offline在无网环境下管理Debian软件包

终极指南&#xff1a;如何用apt-offline在无网环境下管理Debian软件包 【免费下载链接】apt-offline Offline APT Package Manager 项目地址: https://gitcode.com/gh_mirrors/ap/apt-offline 你是否曾因网络连接不稳定而无法更新Debian系统&#xff1f;或者需要在完全离…...