**瑱 2021-07-14 08:50 采纳率: 55%
浏览 38
已结题

vue 中使用setTimeout刷新存在没有清除

1、问题:想自己写个最简单类似歌词的显示(不用实现滚动,突出的部分移动就行)
2、代码:

 var n = 1
 this.soeIndex = 0
 window.clearTimeout(this.clearTime);
 this.svgShow.svgSoe.forEach((soeItem, soeIndex) => {
       n = parseInt(soeItem.time)
       this.clearTime = setTimeout(() => {
          this.soeIndex = soeIndex
        }, 1000 * n);
 })

使用setTimeout可以做到突出部分安装时间移动即可
3、遇到问题的描述:我现在想加一个刷新在上面,刷新后重新执行上面这个,但是刷新后之前的延迟加载还存在,就会导致到处跳动。用到了( window.clearTimeout(this.clearTime);)不行
求解提供思路?

  • 写回答

2条回答 默认 最新

  • 八云黧 2021-07-14 08:58
    关注

    你是for循环啊,所以你只保存了最后一个的setTimeOut的id,试试用数组来保存setTimeOut返回值?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 3月9日
  • 已采纳回答 7月14日
  • 创建了问题 7月14日