基于Vue中使用节流Lodash throttle详解


Posted in Javascript onOctober 30, 2019

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

在Vue中,有时需要对ajax请求提交进行节流操作.这时候,如果页面在请求成功之后会跳转,使用vue指令once或者加载一个loading遮罩禁止点击即可,但如果请求之后不跳转,并且loading不适用时,需要通过其他方式来实现节流,比如通过标识位判断等,这里我们着重说一下如何通过lodash.throttle来实现节流

lodash

lodash是一个广受欢迎的js工具库,其中包含了各种各样的工具函数,方便开发时不需要反复造轮子,更关注于业务.目前已经是4.x版本,文档也十分好找lodash中文文档

_.throttle

这是lodash中的节流函数,具体作用可以直接看官方文档,这里不再进行解释

说下在vue中具体怎么用

首先上错误用法

import _ from 'lodash'

export default{
 methods:{
 click(){
  _.throttle(()=>{
   console.log('hello')
  },1000)
 }
 }
}

以上这样写,在执行时候并不会打印console

正确用法

import _ from 'lodash'

export default{
 methods:{
 click:_.throttle(function(){
   console.log('hello')
   console.log(this)
 },1000)
 }
}

在lodash的throttle方法中,可以直接使用function,而且额外的好处是无需重新指向this,在函数内部中,已经做了apply,所以这里的this指向的就是vue实例,这样对已有函数的改造也是十分的方便,外面包一层_.throttle就可以了!

以上这篇基于Vue中使用节流Lodash throttle详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript在多浏览器下for循环的使用方法
Nov 07 Javascript
将两个div左右并列显示并实现点击标题切换内容
Oct 22 Javascript
node.js中的http.response.removeHeader方法使用说明
Dec 14 Javascript
Javascript中使用parseInt函数需要注意的问题
Apr 02 Javascript
常用的Javascript数据验证插件
Aug 04 Javascript
JS实现的另类手风琴效果网页内容切换代码
Sep 08 Javascript
详解 javascript中offsetleft属性的用法
Nov 11 Javascript
Javascript 实现简单计算器实例代码
Oct 23 Javascript
js+html5实现侧滑页面效果
Jul 15 Javascript
浅谈jquery fullpage 插件增加头部和版权的方法
Mar 20 jQuery
jQuery实现DIV响应鼠标滑过由下向上展开效果示例【测试可用】
Apr 26 jQuery
微信小程序实现星级评分和展示
Jul 05 Javascript
Vue最新防抖方案(必看篇)
Oct 30 #Javascript
vue输入节流,避免实时请求接口的实例代码
Oct 30 #Javascript
vue 解决form表单提交但不跳转页面的问题
Oct 30 #Javascript
解决在Vue中使用axios用form表单出现的问题
Oct 30 #Javascript
vue路由 遍历生成复数router-link的例子
Oct 30 #Javascript
vue表单中遍历表单操作按钮的显示隐藏示例
Oct 30 #Javascript
vue遍历生成的输入框 绑定及修改值示例
Oct 30 #Javascript
You might like
php jq jquery getJSON跨域提交数据完整版
2013/09/13 PHP
PHP实现根据银行卡号判断银行
2015/04/29 PHP
Yii2框架实现数据库常用操作总结
2017/02/08 PHP
PHP 使用位运算实现四则运算的代码
2021/03/09 PHP
javascript面向对象包装类Class封装类库剖析
2013/01/24 Javascript
Js为表单动态添加节点内容的方法
2015/02/10 Javascript
JavaScript制作简易的微信打飞机
2015/03/31 Javascript
jQuery实现下滑菜单导航效果代码
2015/08/25 Javascript
jQuery实现可编辑的表格实例讲解(2)
2015/09/17 Javascript
浅谈JavaScript的push(),pop(),concat()方法
2016/06/03 Javascript
Angularjs 动态改变title标题(兼容ios)
2016/12/29 Javascript
深入理解JavaScript中的预解析
2017/01/04 Javascript
Angular 4依赖注入学习教程之InjectToken的使用(八)
2017/06/04 Javascript
Angular4开发解决跨域问题详解
2017/08/28 Javascript
微信小程序自定义多选事件的实现代码
2018/05/17 Javascript
jQuery 实现倒计时天,时,分,秒功能
2018/07/31 jQuery
bootstrap table实现横向合并与纵向合并
2019/07/18 Javascript
JSONP解决JS跨域问题的实现
2020/05/25 Javascript
微信小程序实现列表滚动头部吸顶的示例代码
2020/07/12 Javascript
vue解决跨域问题(推荐)
2020/11/10 Javascript
[43:35]EG vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
详解python持久化文件读写
2019/04/06 Python
Python龙贝格法求积分实例
2020/02/29 Python
python海龟绘图之画国旗实例代码
2020/11/11 Python
快速一键生成Python爬虫请求头
2021/03/04 Python
HTML5 3D旋转相册的实现示例
2019/12/03 HTML / CSS
巴黎卡诗加拿大官网:Kérastase加拿大
2018/11/12 全球购物
电信专业应届生自荐信
2013/09/28 职场文书
个人应聘自我评价分享
2013/11/18 职场文书
上课随便讲话检讨书
2014/09/12 职场文书
考勤制度通知
2015/04/25 职场文书
清明祭英烈活动总结
2015/05/11 职场文书
php中配置文件保存修改操作 如config.php文件的读取修改等操作
2021/05/12 PHP
浅谈如何提高PHP代码的质量
2021/05/28 PHP
Python Pandas常用函数方法总结
2021/06/15 Python
Linux安装Docker详细教程
2022/07/07 Servers