记录:websoket切换页面后重复执行问题

问题描述

因为项目需求,实时播放执行信息。而项目的websoket只在这个页面,会有切换情况。从websoket连接得到执行列表数据。断开重连后会传递新连接数据+旧连接数据。也就是说,如果第一次进入页面,播放list【0】的数据,第二次会播放2次list【0】,第三次进入会播放3次list【0】。在获得数据-执行播放上就会重复

解决方法

通过watch执行播放。

  ws.onmessage=(data)={
        const wsData = JSON.parse(data)
        this.sysList = [...wsData.sysList, ...this.sysList]
        }
  watch: {
    sysMsgList: function (val) {
      if(this.initcount !== 0) {
        sayTTs(val[0].content)
      }
      this.initcount++
    },
  },
posted @ 2022-07-28 14:21  流云君  阅读(103)  评论(0编辑  收藏  举报