From 2e960901795b52e1a554a9f6fefb6424ff92a901 Mon Sep 17 00:00:00 2001 From: Tevin <tingquanren@163.com> Date: Tue, 23 Aug 2022 17:26:18 +0800 Subject: [PATCH] 优化数值显示组件显示细节 --- common/Bridge.js | 70 +++++++++++++++++++++++++++++++---- 1 files changed, 62 insertions(+), 8 deletions(-) diff --git a/common/Bridge.js b/common/Bridge.js index 811096f..f46cf14 100644 --- a/common/Bridge.js +++ b/common/Bridge.js @@ -227,8 +227,9 @@ * 保存文件到 java 端,并返回文件名 * @param objUrl * @param callback + * @param onError */ - fileSave(objUrl = '', callback) { + fileSave(objUrl = '', callback, onError) { // 非 ObjectURL 跳过 if (objUrl.indexOf('blob:') < 0) { callback(objUrl); @@ -248,7 +249,18 @@ }; this.invoking('img_write', writeData, res => { if (res.result === false) { - Tools.toast(res.msg); + Tools.toast('离线图片存储:' + res.msg); + onError({ + method: 'img_write', + request: { + fileName: writeData.fileName, + currentIdx: writeData.currentIdx, + totalIdx: writeData.total, + data: (writeData.data || '').substr(0, 10) + + '...(共' + (writeData.data || '').length + '个base64字符)', + }, + response: res, + }); return; } // 按分段递归保存 @@ -273,8 +285,9 @@ * 从 java 读取文件 base64 * @param bridgeName * @param callback + * @param onError */ - fileLoad(bridgeName = '', callback) { + fileLoad(bridgeName = '', callback, onError) { // 非存储地址,跳过 if (bridgeName.indexOf('bridge:') < 0) { callback(bridgeName); @@ -297,7 +310,21 @@ }; this.invoking('img_read', loadData, res => { if (res.result === false) { - Tools.toast(res.msg); + Tools.toast('离线图片读取:' + res.msg); + onError({ + method: 'img_read', + request: { + ...loadData, + totalCount, + }, + response: { + result: res.result, + msg: res.msg, + 'total_size': res.totalSize, + data: (res.data || '').substr(0, 10) + + '...(共' + (res.data || '').length + '个base64字符)', + }, + }); return; } if (totalSize === 0) { @@ -315,10 +342,30 @@ baseArr, fileName, }; - $fileTrans.transBaseDataToObjUrl(baseData, objUrl => { - this._data.fileLoaded[bridgeName] = objUrl; - callback && callback(objUrl); - }); + try { + $fileTrans.transBaseDataToObjUrl(baseData, objUrl => { + this._data.fileLoaded[bridgeName] = objUrl; + callback && callback(objUrl); + }); + } catch (e) { + onError({ + method: 'img_read@merge_after_base64_loaded', + request: { + ...loadData, + totalCount, + }, + response: { + result: res.result, + msg: res.msg, + 'total_size': res.totalSize, + data: (res.data || '').substr(0, 10) + + '...(共' + (res.data || '').length + '个base64字符)', + }, + base64Arr: baseData.baseArr.map(baseItem => (baseItem || []).substr(0, 10) + + '...(共' + (res.data || '').length + '个base64字符)'), + message: 'Base64合并解析异常!', + }); + } } }); }; @@ -354,6 +401,9 @@ callback && callback([]); return; } + if (typeof names === 'string') { + names = names.split(','); + } // 保存 if (type === 'save') { const list = []; @@ -370,6 +420,8 @@ else { callback && callback(list); } + }, err => { + callback && callback(null, err); }); }; save(0); @@ -390,6 +442,8 @@ else { callback && callback(list); } + }, err => { + callback && callback(null, err); }); }; load(0); -- Gitblit v1.9.1