From 5779d539955b00a9e519b0123bfef73fb1f93689 Mon Sep 17 00:00:00 2001 From: Abner <22141172+Silentely@users.noreply.github.com> Date: Sat, 13 Jun 2026 20:36:32 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix:=20=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E5=BC=82=E6=AD=A5=E7=94=9F=E6=88=90=E4=BA=8C=E7=BB=B4=E7=A0=81?= =?UTF-8?q?=E5=89=8D=E6=9C=AA=E6=B8=85=E7=A9=BA=E6=97=A7=E5=AE=B9=E5=99=A8?= =?UTF-8?q?=E5=AF=BC=E8=87=B4=E7=9A=84=E6=98=BE=E7=A4=BA=E4=B8=8D=E4=B8=80?= =?UTF-8?q?=E8=87=B4=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在调用 generateQRCode 前先清空旧二维码容器 - 防止异步生成期间旧二维码和新 LPA 字符串不一致 - 修复 Session 恢复或重试时可能扫描到错误二维码的问题 影响模块: - src/giffgaff/js/modules/ui-controller.js (showESimResult) - src/simyo/js/modules/ui-controller.js (showQRResult) 问题来源:Bot 代码审查 (coderabbitai + cubic-dev-ai) P2 级别问题 --- src/giffgaff/js/modules/ui-controller.js | 2 ++ src/simyo/js/modules/ui-controller.js | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/giffgaff/js/modules/ui-controller.js b/src/giffgaff/js/modules/ui-controller.js index b4525fa..86bc484 100644 --- a/src/giffgaff/js/modules/ui-controller.js +++ b/src/giffgaff/js/modules/ui-controller.js @@ -552,6 +552,8 @@ export class UIController { }); } + // 清空旧二维码容器,防止异步生成期间显示过期内容 + this.elements.qrcode.replaceChildren(); // 生成二维码(放在最后,即使失败也不影响 LPA 文本显示) // async 函数需要 await 或 .catch() 处理,避免 unhandled promise rejection this.generateQRCode(state.lpaString).catch((error) => { diff --git a/src/simyo/js/modules/ui-controller.js b/src/simyo/js/modules/ui-controller.js index 13dd74f..af44ba5 100644 --- a/src/simyo/js/modules/ui-controller.js +++ b/src/simyo/js/modules/ui-controller.js @@ -403,6 +403,8 @@ export class UIController { this.elements.resultContainer.style.display = 'block'; this.elements.resultContainer.classList.add('active'); + // 清空旧二维码容器,防止异步生成期间显示过期内容 + this.elements.qrcode.replaceChildren(); // generateQRCode 内部已处理所有错误,无需外部 .catch() this.generateQRCode(lpaString);