全国咨询热线:18720358503

织梦小程序助手_解决js中的setInterval清空定时器不

类别:媒体报道 发布时间:2021-01-05 浏览人次:

解决js中的setInterval清空定时器不管用问题       这篇文章主要介绍了解决js中的setInterval清空定时器不管用问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

使用场景:我在函数A中调用定时器函数,定时器是单独写的一个函数

原因:页面加载时我调用了1次函数A,然后又单独调用了一次定时器函数,导致调用了2次setInterval(),导致有setInterval_id有2个值。

通过打印定时器的值发现的问题。

clearInterval()只关闭了其中一个setInterval_id,另一个setInterval_id还会启动setInterval()。

解决方法:把单独调用的定时器函数去掉。

补充知识:js vue中setTimeout无法通过clearTimeout清除问题

在异步清除中,利用vue 中data存放setTimeout的标识进行清除时,无法清除。则需要在函数前加上window.即可

如window.setTimeout与window.clearTimeout

具体代码如下

精简后的代码。

环境为electron-vue 渲染进程异步获取主进程上html并渲染到页面、过程中需要有loading的显示。

setTimeout 与clearTimeout 未加window时,this.timeOutLoading事件总会被触发。

 template 
 div id="dev" 
 el-tabs v-model="activeName" @tab-click="handleClick" v-loading="loading" 
 el-tab-pane label="文档" name="first" 
 div v-html="html" /div 
 /el-tab-pane 
 el-tab-pane label="设置" name="second" 
 v-devCard /v-devCard 
 /el-tab-pane 
 /el-tabs 
 /div 
 /template 
 script 
 const {ipcRenderer:ipc} = require('electron');
export default {
 data(){
 return{
 activeName: 'second',
 html:'',
 loading:false,
 timeOutLoading:0
 methods:{
 handleClick(tab, event) {
 if(tab.name == 'first' this.loading == false){
 if(this.timeOutLoading != 0){
 window.clearTimeout(this.timeOutLoading);
  = " div 加载中... /div 
 this.loading = true;
 this.timeOutLoading = window.setTimeout(() = {
 if(this.loading == true){
 this.loading = false;
  = " div 加载超时 /div 
 }, 3000);
 window.setTimeout(() = {
 ipc.send("getPage");
 }, 500);
 mounted(){
 ipc.on('getPage-reply', (event, arg) = {
 if(this.timeOutLoading != 0){
 window.clearTimeout(this.timeOutLoading);
 this.timeOutLoading = 0;
 this.loading = false;
  = arg; 
 /script 

以上这篇解决js中的setInterval清空定时器不管用问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持凡科。


推荐阅读

织梦小程序助手_解决js中的setInterval清空定时器不

处理js中的setInterval清除定时执行器无论用难题 本文关键详细介绍掌握决js中的setInterval清除定时执行器无论用难题,具备非常好的参照使用价值,期待对大伙儿有一定的协助。一起...

2021-01-05
广州凡科互联网科技股份有限公司招聘京东店长

招聘人数:5职位信息岗位职责:1、负责京东店铺的日常运营推广及目标制定;2、负责宝贝类目、搜索排名的提升;3、负责官方活动的报名,提升店铺流量、销量;4、负责京东快车、京...

2021-01-05
广州凡科互联网科技股份有限公司招聘带货主播

招聘人数:6职位信息岗位职责:1、负责公司天猫,京东,有赞商城平台等直播工作,通过直播向客户种草产品、展示商品、与粉丝互动(包括回答客户问题,产品展要职责示、优惠券发...

2021-01-05
广州凡科互联网科技股份有限公司招聘外贸跨境

招聘人数:29职位信息岗位职责:按照销售主管的要求,维护网络销售店铺的内容。按照销售主管的要求,组织店铺内的促销活动。作为客户和仓库发货人员的桥梁,处理客户订单信息。...

2021-01-05
广州凡科互联网科技股份有限公司招聘产品经理

招聘人数:29职位信息1、基于公司业务团队的需求,对内部ERP、B2C商城、APP等产品承担主要设计策划工作;2、独立负责对产品用户进行跟踪分析,并充分挖掘用户需求,提升用户体验,...

2021-01-05
广州凡科互联网科技股份有限公司招聘淘宝仓库

招聘人数:24职位信息【想要无法取代,必需与众不同】;我们从事电商,我们团队不大,几十号人,但我们有一个很好的想法,我们整个团队正在为这个想法而努力,我们一定会成功!...

2021-01-05
X

400-8700-61718720358503
企业邮箱2639601583@qq.com
官方微信