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 相关文章推荐
JavaScript的类型简单说明
Sep 03 Javascript
js模拟滚动条(横向竖向)
Feb 22 Javascript
jQuery插件pagination实现分页特效
Apr 12 Javascript
js获取字符串字节数方法小结
Jun 09 Javascript
移动手机APP手指滑动切换图片特效附源码下载
Nov 30 Javascript
简单实现jQuery进度条轮播实例代码
Jun 20 Javascript
jQuery实现两个select控件的互移操作
Dec 22 Javascript
JS实现运动缓冲效果的封装函数示例
Feb 18 Javascript
创建echart多个联动的示例代码
Nov 23 Javascript
js form表单input框限制20个字符,10个汉字代码实例
Apr 12 Javascript
JS阻止事件冒泡的方法详解
Aug 26 Javascript
koa-passport实现本地验证的方法示例
Feb 20 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
乐信RP2100的电路分析和打磨
2021/03/02 无线电
基于PHP读取TXT文件向数据库导入海量数据的方法
2013/04/23 PHP
php+MySQL判断update语句是否执行成功的方法
2014/08/28 PHP
PHP实现在对象之外访问其私有属性private及保护属性protected的方法
2017/11/20 PHP
关于Yii2框架跑脚本时内存泄漏问题的分析与解决
2019/12/01 PHP
jQuery中clone()方法用法实例
2015/01/16 Javascript
jquery点击缩略图切换视频播放特效代码分享
2015/09/15 Javascript
实例剖析AngularJS框架中数据的双向绑定运用
2016/03/04 Javascript
JS结合bootstrap实现基本的增删改查功能
2016/07/22 Javascript
JS中检测数据类型的几种方式及优缺点小结
2016/12/12 Javascript
JavaScript中清空数组的三种方式
2017/03/22 Javascript
vue中mint-ui环境搭建详细介绍
2017/04/06 Javascript
layui弹出层效果实现代码
2017/05/19 Javascript
jQuery+Cookie实现切换皮肤功能【附源码下载】
2018/03/25 jQuery
原生JS实现自定义下拉单选选择框功能
2018/10/12 Javascript
Nodejs中的require函数的具体使用方法
2019/04/02 NodeJs
django js 实现表格动态标序号的实例代码
2019/07/12 Javascript
详解vue-video-player使用心得(兼容m3u8)
2019/08/23 Javascript
微信小程序地图实现展示线路
2020/07/29 Javascript
Node 使用express-http-proxy 做api网关的实现
2020/10/15 Javascript
Python类的多重继承问题深入分析
2014/11/09 Python
python用来获得图片exif信息的库实例分析
2015/03/16 Python
在树莓派2或树莓派B+上安装Python和OpenCV的教程
2015/03/30 Python
Python的Flask框架中web表单的教程
2015/04/20 Python
python3在同一行内输入n个数并用列表保存的例子
2019/07/20 Python
使用Keras 实现查看model weights .h5 文件的内容
2020/06/09 Python
Keras之fit_generator与train_on_batch用法
2020/06/17 Python
使用Keras中的ImageDataGenerator进行批次读图方式
2020/06/17 Python
拿来就用!Python批量合并PDF的示例代码
2020/08/10 Python
Python模拟登录requests.Session应用详解
2020/11/17 Python
Myprotein亚太地区:欧洲第一在线运动营养品牌
2020/12/20 全球购物
职业生涯规划书基本格式
2014/01/06 职场文书
带病坚持工作事迹
2014/05/03 职场文书
论文诚信承诺书
2014/05/23 职场文书
店铺转让协议书
2015/01/29 职场文书
Nginx部署vue项目和配置代理的问题解析
2021/08/04 Servers