王文洲的前后端学习
首页
  • VUE
  • ES6
  • JS进阶
  • JS进阶2
  • 第一周作业
  • 第三周作业
  • 第五周作业
  • 第六周作业
  • 《ES6 教程》
  • 《Vue》
  • 《JavaScript教程》
  • 《TypeScript 从零实现 axios》
面试必备

软件行业的小学生

立志做出震撼产品
首页
  • VUE
  • ES6
  • JS进阶
  • JS进阶2
  • 第一周作业
  • 第三周作业
  • 第五周作业
  • 第六周作业
  • 《ES6 教程》
  • 《Vue》
  • 《JavaScript教程》
  • 《TypeScript 从零实现 axios》
面试必备
  • 基础

  • 组件

  • 过渡&动画

  • 可复用性&组合

  • 工具

  • 规模化

  • 其他

    • Vue中的防抖函数封装和使用
      • 操作本地缓存
    • 《Vue》
    • 其他
    2020-02-04

    Vue中的防抖函数封装和使用

    # Vue中的防抖函数封装和使用

    如搜索框中,每改变一个数值就请求一次搜索接口,当快速的改变数值时并不需要多次请求接口,这就需要一个防抖函数:

    // 防抖函数
    export function debounce(func, delay) { // func 函数 delay间隔时间
      let timer
      return function (...args) {
        if (timer) {
          clearTimeout(timer)
        }
        timer = setTimeout(() => {
          func.apply(this, args)
        }, delay)
      }
    }
    
    
    
    
    //使用:
    import { debounce } from '@/common/js/util'
    
    created() {
        /**
         * 为什么不直接在watch里面写???
         * 因为要做防抖处理,防止在快速输入时多次请求接口
         */
        this.$watch('query', debounce((newQuery) => {
          this.$emit('query', newQuery)
        }, 200))
      }
    

    # 相关文章

    防抖与节流函数

    路由懒加载
    操作本地缓存

    ← 路由懒加载 操作本地缓存→

    最近更新
    01
    我的作业6
    01-02
    02
    我的作业5
    01-02
    03
    JS进阶2(专属学习)
    12-25
    更多文章>
    Copyright © 2020-2023 飞刀和雨 | 沪ICP备16038939号-1
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式