WebScoket

 connect() {
      let that = this;
      let wsIp = process.env.VUE_APP_URL.split("/")[2].slice(0, -5);
      let wsServer = "ws://" + wsIp + ":5888/ws";
      //   let wsServer = "ws://" + "192.168.3.212" + ":5888/ws";
      that.websocket = new WebSocket(wsServer);
      if (that.timer && that.connectStatus) clearTimeout(that.timer);
      //监听连接打开
      that.websocket.onopen = function (evt) {
        console.log("打开链接");
        console.log(evt);
        that.connectStatus = true;
        that.loading = true;
        that.websocket.send(
          JSON.stringify({ channelCode: that.codeFirst + that.code })
        );
      };

      //监听服务器数据推送
      that.websocket.onmessage = function (evt) {
        console.log(evt);
        that.loading = false;
        that.detail = JSON.parse(evt.data) || {};
        console.log(that.detail);
        that.detail.autoRun == "1"
          ? (that.detail.autoRun = true)
          : (that.detail.autoRun = false);
        that.detail.workMode == "1"
          ? (that.detail.workMode = true)
          : (that.detail.workMode = false);
        that.detail.backwash == "1"
          ? (that.detail.backwash = true)
          : (that.detail.backwash = false);
        that.detail.moduleListVoList.forEach((e) => {
          e.value = +e.value;
        });
        that.tableData = that.detail.moduleListVoList;
      };

      //监听连接关闭
      that.websocket.onclose = function (evt) {
        console.log("连接关闭");
        console.log(evt);
        //监听到关闭,尝试重连
        // that.timer = setTimeout(function () {
        //   if (that.connectStatus && this.reconnectTimes <= 0) {
        //     that.connectStatus = false;
        //     that.ws.close();
        //     that.$message({
        //       type: "error",
        //       message: "数据连接失败",
        //     });
        //     return;
        //   }
        //   that.reconnectTimes--;
        //   that.connect();
        // }, 5000);
      };
      that.websocket.onerror = function (evt) {
        that.connectStatus = false;
        console.log("连接错误");
        that.$message({
          type: "error",
          message: "数据连接失败",
        });
      };
    },
  		websocket: null,
      	connectStatus: false, //socket连接状态  false:关闭 true:连接
     	loading: true,
      	timer: null,
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值