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,