vue项目每30秒刷新1次接口的实现方法


Posted in Javascript onDecember 04, 2018

在vue.js项目中,经常需要对数据实时更新——每隔xx秒需要刷新一次接口——即需要用到定时器相关原理

我们先看一看2种常用定时器:

setInterval(function(){}, milliseconds)——会不停的调用函数
setTimeout(function(){}, milliseconds)——只执行函数一次

乍看之下,setInterval会符合我们的业务需求,然而也需要注意一些坑,单纯的使用setInterval会导致页面卡死!其原因与JS引擎线程有关(有兴趣的童鞋可自行研究相关资料),用通俗话说就是setInterval不会清除定时器队列,每重复执行1次都会导致定时器叠加,最终卡死你的网页。

但是setTimeout是自带清除定时器的,因此正确解决方法如下:

window.setInterval(() => {
  setTimeout(fun, 0)
}, 30000)

注意:setInterval必须放在外层(在内层会导致页面卡顿直到崩溃),内层配合setTimeout,即可无限次调用我们的接口啦!

总结

以上所述是小编给大家介绍的vue项目每30秒刷新1次接口的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
js 模拟气泡屏保效果代码
Jul 10 Javascript
JQuery Study Notes 学习笔记(一)
Aug 04 Javascript
在jQuery ajax中按钮button和submit的区别分析
Oct 07 Javascript
js绑定事件this指向发生改变的问题解决方法
Apr 23 Javascript
jQuery拖动布局其结果保存到数据库
Oct 09 Javascript
js实时获取窗口大小变化的实例代码
Nov 18 Javascript
w3c编程挑战_初级脚本算法实战篇
Jun 23 Javascript
微信小程序使用picker实现时间和日期选择框功能【附源码下载】
Dec 11 Javascript
js数组方法reduce经典用法代码分享
Jan 07 Javascript
vue组件编写之todolist组件实例详解
Jan 22 Javascript
深入理解js A*寻路算法原理与具体实现过程
Dec 13 Javascript
Layui实现数据表格默认全部显示(不要分页)
Oct 26 Javascript
详解webpack4之splitchunksPlugin代码包分拆
Dec 04 #Javascript
React Native中Mobx的使用方法详解
Dec 04 #Javascript
element ui table(表格)实现点击一行展开功能
Dec 04 #Javascript
elementUI中Table表格问题的解决方法
Dec 04 #Javascript
zepto.js 实时监听输入框的方法
Dec 04 #Javascript
vue 之 css module的使用方法
Dec 04 #Javascript
Vue源码解析之数组变异的实现
Dec 04 #Javascript
You might like
如何使用PHP中的字符串函数
2006/10/09 PHP
php设计模式 Visitor 访问者模式
2011/06/28 PHP
php开发留言板的CRUD(增,删,改,查)操作
2012/04/19 PHP
谨慎使用PHP的引用原因分析
2012/09/06 PHP
PHP批量上传图片的具体实现方法介绍.
2014/02/26 PHP
使用XHProf查找PHP性能瓶颈的实例
2017/12/13 PHP
laravel框架邮箱认证实现方法详解
2019/11/22 PHP
html下载本地
2006/06/19 Javascript
JavaScript学习笔记(十)
2010/01/17 Javascript
jquery Mobile入门—外部链接切换示例代码
2013/01/08 Javascript
jquery序列化form表单使用ajax提交后处理返回的json数据
2014/03/03 Javascript
jQuery实现的仿select功能代码
2015/08/19 Javascript
nodejs集成sqlite使用示例
2017/06/05 NodeJs
AngularJS自定义指令详解(有分页插件代码)
2017/06/12 Javascript
微信小程序动态添加分享数据
2017/06/14 Javascript
vue-rx的初步使用教程
2018/09/21 Javascript
Vue.js组件使用props传递数据的方法
2019/10/19 Javascript
antd的select下拉框因为数据量太大造成卡顿的解决方式
2020/10/31 Javascript
vue print.js打印支持Echarts图表操作
2020/11/13 Javascript
python实现用户答题功能
2018/01/17 Python
python2.7+selenium2实现淘宝滑块自动认证功能
2018/02/24 Python
kali中python版本的切换方法
2019/07/11 Python
Python异常模块traceback用法实例分析
2019/10/22 Python
浅谈tensorflow中Dataset图片的批量读取及维度的操作详解
2020/01/20 Python
python 实现线程之间的通信示例
2020/02/14 Python
Python实现GIF图倒放
2020/07/16 Python
Python中正则表达式对单个字符,多个字符和匹配边界等使用
2021/01/27 Python
Mio Skincare法国官网:身体紧致及孕期身体护理
2018/04/04 全球购物
德国电子产品购物网站:TechInTheBasket德国
2018/12/07 全球购物
Linux常见面试题
2013/03/18 面试题
某科技软件测试面试题
2013/05/19 面试题
会计电算化个人自我评价
2013/11/17 职场文书
校本教研工作方案
2014/01/14 职场文书
创业资金计划书
2014/02/06 职场文书
自动一体化专业求职信
2014/03/15 职场文书
Python如何导出导入所有依赖包详解
2021/06/08 Python