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 相关文章推荐
基于jquery的仿百度搜索框效果代码
Apr 11 Javascript
JQuery获取或设置ckeditor的数据(示例代码)
Nov 15 Javascript
Javascript判断图片尺寸大小实例分析
Jun 16 Javascript
函数式 JavaScript(一)简介
Jul 07 Javascript
JavaScript中的单引号和双引号报错的解决方法
Sep 01 Javascript
javascript实现链接单选效果的方法
May 13 Javascript
微信js-sdk上传与下载图片接口用法示例
Oct 12 Javascript
JavaScript 最佳实践:帮你提升代码质量
Dec 03 Javascript
Bootstrap Table使用整理(二)
Jun 09 Javascript
webpack中如何加载静态文件的方法步骤
May 18 Javascript
JS常见内存泄漏及解决方案解析
May 30 Javascript
vue中element 的upload组件发送请求给后端操作
Sep 07 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验证码代码
2012/02/27 PHP
ThinkPHP安装和设置
2015/07/27 PHP
Laravel 中使用简单的方法跟踪用户是否在线(推荐)
2019/10/30 PHP
Dom 结点创建 基础知识
2011/10/01 Javascript
js 中的switch表达式使用示例
2020/06/03 Javascript
javascript获取隐藏元素(display:none)的高度和宽度的方法
2014/06/06 Javascript
JavaScript通过this变量快速找出用户选中radio按钮的方法
2015/03/23 Javascript
js跨域请求的5中解决方式
2015/07/02 Javascript
JS事件添加和移出的兼容写法示例
2016/06/20 Javascript
jQuery电话号码验证实例
2017/01/05 Javascript
ionic 3.0+ 项目搭建运行环境的教程
2017/08/09 Javascript
vue 弹框产生的滚动穿透问题的解决
2018/09/21 Javascript
爬虫利器Puppeteer实战
2019/01/09 Javascript
js核心基础之闭包的应用实例分析
2019/05/11 Javascript
layui点击左侧导航栏,实现不刷新整个页面,只刷新局部的方法
2019/09/25 Javascript
微信小程序wxml列表渲染原理解析
2019/11/27 Javascript
VUE UPLOAD 通过ACTION返回上传结果操作
2020/09/07 Javascript
vue实现顶部菜单栏
2020/11/08 Javascript
Python脚本文件打包成可执行文件的方法
2015/06/02 Python
通过Python实现自动填写调查问卷
2017/09/06 Python
Python探索之pLSA实现代码
2017/10/25 Python
python安装教程
2018/02/28 Python
python更改已存在excel文件的方法
2018/05/03 Python
Django中的静态文件管理过程解析
2019/08/01 Python
什么是python的自省
2020/06/21 Python
检测浏览器是否支持html5视频的代码
2013/03/28 HTML / CSS
HTML5学习笔记之History API
2015/02/26 HTML / CSS
韩国三星旗下的一家超市连锁店:Home Plus
2016/07/30 全球购物
世界领先的以旅馆为主的在线预订平台:Hostelworld
2016/10/09 全球购物
The Outnet亚太地区:折扣设计师时装店
2019/12/05 全球购物
New Balance俄罗斯官方网上商店:购买运动鞋
2020/03/02 全球购物
绩效工资分配方案
2014/01/18 职场文书
助学贷款贫困证明
2014/09/23 职场文书
还款承诺书范本
2015/01/20 职场文书
2016年寒假社会实践活动心得体会
2015/10/09 职场文书
Python并发编程实例教程之线程的玩法
2021/06/20 Python