类别:媒体报道 发布时间:2021-01-05 浏览人次:
使用场景:我在函数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清除定时执行器无论用难题,具备非常好的参照使用价值,期待对大伙儿有一定的协助。一起...
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