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 相关文章推荐
用 JSON 处理缓存
Apr 27 Javascript
JQuery入门—编写一个简单的JQuery应用案例
Jan 03 Javascript
javascript获取当前的时间戳的方法汇总
Jul 26 Javascript
AngularJS Module方法详解
Dec 08 Javascript
js中字符串编码函数escape()、encodeURI()、encodeURIComponent()区别详解
Apr 01 Javascript
jQuery validate验证插件使用详解
May 11 Javascript
JS函数的定义与调用方法推荐
May 12 Javascript
BootStrap Datepicker 插件修改为默认中文的实现方法
Feb 10 Javascript
基于js中的原型(全面讲解)
Sep 19 Javascript
vue项目开发中setTimeout等定时器的管理问题
Sep 13 Javascript
微信小程序环境下将文件上传到OSS的方法步骤
May 31 Javascript
Vuex模块化应用实践示例
Feb 03 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数据缓存的使用说明
2013/05/10 PHP
Codeigniter通过SimpleXML将xml转换成对象的方法
2015/03/19 PHP
变量在 PHP7 内部的实现(二)
2015/12/21 PHP
Laravel 6 将新增为指定队列任务设置中间件的功能
2019/08/06 PHP
html读出文本文件内容
2007/01/22 Javascript
js String对象中常用方法小结(字符串操作)
2012/01/27 Javascript
jQuery实现 注册时选择阅读条款 左右移动
2013/04/11 Javascript
Javascript操作URL函数修改版
2013/11/07 Javascript
SeaJS 与 RequireJS 的差异对比
2014/12/08 Javascript
Angularjs实现mvvm式的选项卡示例代码
2016/09/08 Javascript
Javascript中的神器——Promise
2017/02/08 Javascript
vue实现表格增删改查效果的实例代码
2017/07/18 Javascript
React/Redux应用使用Async/Await的方法
2017/11/16 Javascript
vue中使用codemirror的实例详解
2018/11/01 Javascript
详解JavaScript中的函数、对象
2019/04/01 Javascript
如何在微信小程序里面退出小程序的方法
2019/04/28 Javascript
详解Vue底部导航栏组件
2019/05/02 Javascript
vue-router路由模式详解(小结)
2019/08/26 Javascript
微信小程序转化为uni-app项目的方法示例
2020/05/22 Javascript
[02:22:36]《加油!DOTA》总决赛
2014/09/19 DOTA
[00:57]深扒TI7聊天轮盘语音出处5
2017/05/11 DOTA
pyspark 读取csv文件创建DataFrame的两种方法
2018/06/07 Python
python实现微信定时每天和女友发送消息
2019/04/29 Python
Python turtle绘画象棋棋盘
2019/08/21 Python
Python实现画图软件功能方法详解
2020/07/28 Python
goodhealth官方海外旗舰店:新西兰国民营养师
2017/12/15 全球购物
手机业务员岗位职责
2013/12/13 职场文书
二年级体育教学反思
2014/01/15 职场文书
期中考试后的反思
2014/02/08 职场文书
《最后的姿势》教学反思
2014/02/27 职场文书
小学生感恩演讲稿
2014/04/25 职场文书
护士工作失误检讨书
2014/09/14 职场文书
学雷锋献爱心倡议书
2015/04/27 职场文书
创业计划书之个人工作室
2019/08/22 职场文书
五年级作文之成长
2019/09/16 职场文书
浅谈移动端中的视口(viewport)的具体使用
2021/04/13 HTML / CSS