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 相关文章推荐
判断是否输入完毕再激活提交按钮
Jun 26 Javascript
js中获取事件对象的方法小结
Mar 13 Javascript
jquery.form.js实现将form提交转为ajax方式提交的方法
Apr 07 Javascript
全面了解JavaScirpt 的垃圾(garbage collection)回收机制
Jul 11 Javascript
通过js修改input、select默认字体颜色
Apr 19 Javascript
Chrome调试折腾记之JS断点调试技巧
Sep 11 Javascript
Vue代码分割懒加载的实现方法
Nov 23 Javascript
JavaScript模块详解
Dec 18 Javascript
使用Vue父子组件通信实现todolist的功能示例代码
Apr 11 Javascript
详解微信小程序中var、let、const用法与区别
Jan 11 Javascript
Vue插件之滑动验证码用法详解
Apr 05 Javascript
vue 限制input只能输入正数的操作
Aug 05 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中正确的使用json
2013/08/06 PHP
Laravel中注册Facades的步骤详解
2016/03/16 PHP
javascript getElementsByClassName 和js取地址栏参数
2010/01/02 Javascript
jQuery 选择器、DOM操作、事件、动画
2010/11/25 Javascript
window.dialogArguments 使用说明
2011/04/11 Javascript
wap浏览自动跳转到wap页面的js代码
2014/05/17 Javascript
JavaScript拆分字符串时产生空字符的解决方案
2014/09/26 Javascript
js实现同一个页面多个渐变效果的方法
2015/04/10 Javascript
全面解析Javascript无限添加QQ好友原理
2016/06/15 Javascript
JS基础随笔(菜鸟必看篇)
2016/07/13 Javascript
React.js中常用的ES6写法总结(推荐)
2017/05/09 Javascript
基于JavaScript实现数码时钟效果
2020/03/30 Javascript
一个简易的js图片轮播效果
2017/07/22 Javascript
微信小程序 五星评分的实现实例
2017/08/04 Javascript
javascript基于定时器实现进度条功能实例
2017/10/13 Javascript
使用validate.js实现表单数据提交前的验证方法
2018/09/04 Javascript
微信小程序实现页面浮动导航
2019/01/28 Javascript
如何在Vue中抽离接口配置文件
2019/10/31 Javascript
基于ajax及jQuery实现局部刷新过程解析
2020/09/12 jQuery
微信小程序实现电影App导航和轮播
2020/11/30 Javascript
[02:51]2014DOTA2 TI小组赛总结中国军团全部进军钥匙球馆
2014/07/15 DOTA
Python中的index()方法使用教程
2015/05/18 Python
Python爬虫爬取美剧网站的实现代码
2016/09/03 Python
Python使用QQ邮箱发送Email的方法实例
2017/02/09 Python
Python正则表达式经典入门教程
2017/05/22 Python
Python实现修改文件内容的方法分析
2018/03/25 Python
Python Threading 线程/互斥锁/死锁/GIL锁
2019/07/21 Python
Python之京东商品秒杀的实现示例
2021/01/06 Python
英文版网络工程师求职信
2013/10/28 职场文书
网络公司美工设计工作个人的自我评价
2013/11/03 职场文书
小学教师评语大全
2014/04/23 职场文书
基层党支部公开承诺书
2014/05/29 职场文书
驾驶员安全责任书
2014/07/22 职场文书
感恩母亲节活动总结
2015/02/10 职场文书
公务员学习中国梦心得体会
2016/01/05 职场文书
Python字符串对齐方法使用(ljust()、rjust()和center())
2021/04/26 Python