diff --git a/miniprogram/pages/connectedDevice/connectedDevice.ts b/miniprogram/pages/connectedDevice/connectedDevice.ts index 115c968..f1cf8b4 100644 --- a/miniprogram/pages/connectedDevice/connectedDevice.ts +++ b/miniprogram/pages/connectedDevice/connectedDevice.ts @@ -39,6 +39,8 @@ let connectCleanup: { /** 一次性防重入标记 */ let modalLocked = false let autoConnectTried = false +/** 进入页面时是否已连接(返回时恢复被扫描打断的连接) */ +let enteredConnected = false Page({ data: { @@ -46,6 +48,10 @@ Page({ deviceList: [] as DeviceItem[], }, + onLoad() { + enteredConnected = leFuService.isConnected + }, + onShow() { // 从其他页面返回时同步连接状态 if (leFuService.isConnected) { @@ -67,6 +73,10 @@ Page({ leFuService.stopScan() this._clearSubscriptions() this._clearConnectCleanup() + // 进入前已连接、扫描打断连接后返回:恢复原连接 + if (enteredConnected) { + leFuService.autoConnect() + } }, /** 点击「开始 / 重新搜索」 */