1.软文推荐

2.软文推荐

3.软文推荐

目录: 1、43.Vue中使用Lodash 节流(throttle)和防抖(debounce)函数 2、在vue中使用防抖 3、vue防抖指令方法 43.Vue中使用Lodash 节流(throttle)和防抖(debounce)函数

1、节流(throttle): 创建一个节流函数,在等待时间内最多执行 一次的函数

2、防抖(debounce):创建一个 debounced(防抖动)函数,该函数会从上一次被调用后,延迟多少时间后调用方法,如果不停执行函数,执行时间被覆盖

lodash中文文档

在vue中使用防抖

防抖是 在事件被触发n秒后再执行回调函数,如果在这n秒内又被触发,则重新计时。

常规写法如下

由上面改写过来变成:

vue防抖指令方法

1.创建 common.js 文件 

/**

 * @desc 函数防抖

 * @param func 函数

 * @param wait 延迟执行毫秒数

 * @param immediate true 表立即执行,false 表非立即执行

 */

export function debounce(func, wait, immediate = true) {

  let timeout

  return function () {

    if (timeout) clearTimeout(timeout)

    if (immediate) {

      var callNow = !timeout

      timeout = setTimeout(() = {

        timeout = null

      }, wait)

      if (callNow) func.apply(this, arguments)

    } else {

      timeout = setTimeout(function () {

        func.apply(context, args)

      }, wait)

    }

  }

}

2.创建 directives.js文件

import Vue from 'vue'

import { debounce } from '@/plugins/common'

//防抖自定义指令

Vue.directive('debounce',{

    bind(el,binding){

        let executeFunction;

        if(binding.value instanceof Array){//传参

            executeFunction = debounce(func,time)

        }else{//不传参

            executeFunction = debounce(binding.value,1000)

        }

        el.addEventListener('click',executeFunction);

    }

})

3.main.js 引入 import '@/directives'

4. 使用 v-debounce='click函数不可以带括号 会自动触发函数'

相关文章 8

1

美国服务器高级渗透测试有哪些优点 3分钟前

目录:1、渗透检测有何优点?2、美国服务器为什么那么受欢迎?美国服务器优点有什么?3、渗透测试的主要作用有哪些4、渗透测试是什么...

2

阿里云共享型 5分钟前

目录:1、阿里云共享型和计算型区别?2、阿里云 共享计算型会不会受到其它用户影响3、如何购买阿里云服务器?阿里云服务器购买操作流...

3

云服务器更换操作系统 6分钟前

目录:1、阿里云服务器操作系统有哪些?如何选择?2、云服务器选什么操作系统?3、如何更换华为云服务器操作系统4、如何选择阿里云云...

4

四大门户网站的服务器有多大 7分钟前

目录:1、一个网站服务器的存储空间有多大?2、一般的大型门户网站初期要多大空间的服务器?3、门户网站需要什么类型的服务器?一个...

5

虚拟主机discuz 9分钟前

目录:1、Discuz!社区是免费的吗?它需要怎样的主机?2、如何在虚拟主机上安装discuz?3、discuz如何上传到虚拟主机Discuz!社区是免费的吗?它...

6

免备案云主机域名为什么无法访问 11分钟前

目录:1、域名无法访问怎么办?是什么原因?2、为什么域名无法访问,网站备案失败?3、阿里云的服务器,网站域名没有备案为什么就不...

7

所有视频软件无法连接服务器 13分钟前

目录:1、手机网络正常,但软件无法打开,显示无法连接服务器?2、苹果5手机用腾讯视频无法连接网络,要怎么做?3、所有网络视频软件...

8

传奇4国际服下载 13分钟前

目录:1、新加坡手机在中国怎么玩传奇42、传奇4国际服怎么下载 安卓IOS下载安装教程3、传奇4手游怎么下载4、传奇4韩服手游国际服下载渠...