美文网首页前端知识点reactjs知识点
React/Vue中基于lodash库完成防抖、节流功能

React/Vue中基于lodash库完成防抖、节流功能

作者: 懒惰的狮子 | 来源:发表于2023-03-01 07:14 被阅读0次
  1. 安装
yarn add lodash
  1. React使用
import * as _ from "lodash";
// 节流 指定一个时间,在这个时间内只执行一次,超过指定时间可再次执行,一般用于发生请求
// 参数依次是函数,延迟毫秒数, trailing:false 调用在节流前 true节流后
const handleSubmit = _.throttle(submit, 5000, { 'trailing': false });
const submit = () => {}
<div onClick={handleSubmit}>发送</div>
// 防抖 事件执行时间隔N秒执行,重复执行,清除定时器,直到停止事件执行,N后返回结果,关注最后一次结果 一般用于输入框搜索等
const handleSearch= _.debounce(onSearch, 5000);
const onSearch = (e) => { console.log(e) } // 接受参数
<div onClick={()=>{onSearch (e)}}>发送</div>

3.Vue使用

<template>
  <div @click="throttledMethod()">发送</div >
  <div @click="debounceMethod()">发送</div >
</template>
<script>
import _ from 'lodash'
export default {
  methods: {
    throttledMethod: _.throttle(function() {console.log('!') }, 2000); // 节流
    debounceMethod: _.debounce(function() { console.log('!')}, 2000)  // 防抖
  }
}
</script>

相关文章

  • 谈谈js中的节流和防抖函数

    关于节流和防抖,这篇文章说的很好了,深入lodash源码分析防抖和节流深入篇 | Lodash 防抖和节流是怎么实...

  • Vue中用Lodash的throttle和debounce

    .throttle是lodash中的节流函数,.debounce是lodash中的防抖函数。具体作用可以直接看官方...

  • js去抖与节流

    在vue监听器章节用到一个js插件lodash的函数去抖(debounce)和节流(throttle)功能,之前大...

  • 项目常用代码

    节流 } 防抖 } 页面滚动(requestAnimationFrame) vue全局点击防抖

  • 前端框架选型

    前端框架分类 类库JOuery,Lodash(Underscore) JS库React,Vue,Angular,E...

  • 从lodash库中窥探防抖与节流

    1. 防抖与节流出现的背景 在日常搬砖中我们都会发现JS有很多高频率触发的事件,比如scroll、mouseove...

  • 在 Vue 中使用lodash对事件进行防抖和节流

    事件节流和防抖是提高性能或降低网络开销的好方法。虽然 Vue 1曾经支持对事件的节流和防抖,但是在Vue 2中为了...

  • JavaScript - 防抖和节流

    lodash工具库里有实现防抖和节流的函数 防抖和节流严格算起来应该属于性能优化的知识,但实际上遇到的频率相当高,...

  • Markdown

    markdown 特点: 并没有使用v-model,防抖节流 引入marked , lodash 样式直接用100...

  • Vue中使用 Lodash.throttle 来做节流

    Vue中使用 Lodash.throttle 来做节流 在Vue中,有时需要对ajax请求提交进行节流操作.这时候...

网友评论

    本文标题:React/Vue中基于lodash库完成防抖、节流功能

    本文链接:https://www.haomeiwen.com/subject/voulldtx.html