From cf77ec3307c0d44bc5303f606762c003d4f50b86 Mon Sep 17 00:00:00 2001 From: mengshukeji Date: Fri, 4 Dec 2020 10:56:05 +0800 Subject: [PATCH] fix(demo): websocket url 1.Update updateUrl 2.fix websocket parse data error --- src/controllers/resize.js | 4 ++++ src/controllers/server.js | 18 +++++++++++------- src/index.html | 3 +-- src/locale/en.js | 8 ++++++++ src/locale/es.js | 11 +++++++++++ src/locale/zh.js | 8 ++++++++ 6 files changed, 43 insertions(+), 9 deletions(-) diff --git a/src/controllers/resize.js b/src/controllers/resize.js index 2f45c2d..2883312 100644 --- a/src/controllers/resize.js +++ b/src/controllers/resize.js @@ -124,6 +124,10 @@ export default function luckysheetsizeauto(isRefreshCanvas=true) { const toobarElements = Store.toobarObject.toobarElements; let moreButtonIndex = 0; + // When you resize the window during initialization, you will find that the dom has not been rendered yet + if(toobarWidths == undefined){ + return; + } // 找到应该隐藏的起始元素位置 for (let index = toobarWidths.length - 1; index >= 0; index--) { diff --git a/src/controllers/server.js b/src/controllers/server.js index 2c67a3b..d99d5ed 100644 --- a/src/controllers/server.js +++ b/src/controllers/server.js @@ -155,7 +155,7 @@ const server = { //连接建立时触发 _this.websocket.onopen = function() { - console.info('WebSocket连接成功'); + console.info(locale().websocket.success); hideloading(); _this.wxErrorCount = 0; @@ -216,7 +216,10 @@ const server = { } } else if(type == 4){ //批量指令更新 - let items = JSON.parse(data.data); + // let items = JSON.parse(data.data); + + // After editing by multiple people, data.data may appear as an empty string + let items = data.data === "" ? data.data : JSON.parse(data.data); for(let i = 0; i < items.length; i++){ _this.wsUpdateMsg(item[i]); @@ -229,22 +232,23 @@ const server = { _this.wxErrorCount++; if(_this.wxErrorCount > 3){ - showloading("WebSocket连接发生错误, 请刷新页面!"); + showloading(locale().websocket.refresh); } else{ - showloading("WebSocket连接发生错误, 请耐心等待!"); + showloading(locale().websocket.wait); _this.openWebSocket(); } } //连接关闭时触发 _this.websocket.onclose = function(){ - console.info('WebSocket连接关闭'); - alert("服务器通信发生错误,请刷新页面后再试,如若不行请联系管理员!"); + console.info(locale().websocket.close); + + alert(locale().websocket.contact); } } else{ - alert('当前浏览器 Not Support WebSocket'); + alert(locale().websocket.support); } }, wsUpdateMsg: function(item) { diff --git a/src/index.html b/src/index.html index cc51b09..7a734dd 100644 --- a/src/index.html +++ b/src/index.html @@ -21,7 +21,6 @@
- @@ -67,7 +66,7 @@ lang: lang, allowUpdate:true, updateImageUrl: location.origin + "/luckysheet/api/updateImg", - updateUrl: "ws://"+ location.host +"/luckysheet/websocket/qksheet", + updateUrl: "ws://"+ location.host +"/luckysheet/websocket/luckysheet", gridKey: gridKey, loadUrl: location.origin + "/luckysheet/api/load", loadSheetUrl: location.origin + "/luckysheet/api/loadsheet" diff --git a/src/locale/en.js b/src/locale/en.js index 6bbfe01..67589dd 100644 --- a/src/locale/en.js +++ b/src/locale/en.js @@ -9999,6 +9999,14 @@ export default { }, edit:{ typing:"typing", + }, + websocket:{ + success: 'WebSocket connection success', + refresh: 'An error occurred in the WebSocket connection, please refresh the page!', + wait: 'An error occurred in the WebSocket connection, please be patient!', + close: 'WebSocket connection closed', + contact: 'Server communication error occurred, please refresh the page and try again, if not, please contact the administrator!', + support: 'The current browser does not support WebSocket', } }; \ No newline at end of file diff --git a/src/locale/es.js b/src/locale/es.js index 14138fb..ce51b35 100644 --- a/src/locale/es.js +++ b/src/locale/es.js @@ -9979,5 +9979,16 @@ export default { menuItemAreas:"Imprimir áreas", menuItemRows:"Imprimir títulos de filas", menuItemColumns:"Imprimir títulos de columnas", + }, + edit:{ + typing:"mecanografía", + }, + websocket:{ + success: 'Éxito de la conexión de WebSocket', + refresh: 'Se produjo un error en la conexión de WebSocket, ¡actualice la página!', + wait: 'Se produjo un error en la conexión de WebSocket, ¡tenga paciencia!', + close: 'Conexión WebSocket cerrada', + contact: 'Ocurrió un error de comunicación con el servidor, actualice la página y vuelva a intentarlo; de lo contrario, comuníquese con el administrador.', + support: 'El navegador actual no es compatible con WebSocket', } }; \ No newline at end of file diff --git a/src/locale/zh.js b/src/locale/zh.js index cd94a96..dd7b883 100644 --- a/src/locale/zh.js +++ b/src/locale/zh.js @@ -10240,6 +10240,14 @@ export default { }, edit:{ typing:"正在输入", + }, + websocket:{ + success: 'WebSocket连接成功', + refresh: 'WebSocket连接发生错误, 请刷新页面!', + wait: 'WebSocket连接发生错误, 请耐心等待!', + close: 'WebSocket连接关闭', + contact: '服务器通信发生错误,请刷新页面后再试,如若不行请联系管理员!', + support: '当前浏览器不支持WebSocket', } };