From cc46e727d1d0612881319eb8af98458d70508550 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=9B=AE=E6=A3=83?= Date: Sun, 14 Jul 2024 20:37:37 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20=E4=BF=AE=E5=A4=8D=E6=9C=AA?= =?UTF-8?q?=E8=A3=85=E9=85=8D=E5=9C=A3=E9=81=97=E7=89=A9=E6=97=B6=E7=9A=84?= =?UTF-8?q?=E6=B8=B2=E6=9F=93=E5=BC=82=E5=B8=B8=EF=BC=882=E5=91=A8?= =?UTF-8?q?=E7=9B=AE=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../devCharacter/duc-detail-overlay.vue | 4 +++- .../devCharacter/duc-detail-relics.vue | 23 ++++++++++++------- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/src/components/devCharacter/duc-detail-overlay.vue b/src/components/devCharacter/duc-detail-overlay.vue index ec22cd7f..15c5bd2b 100644 --- a/src/components/devCharacter/duc-detail-overlay.vue +++ b/src/components/devCharacter/duc-detail-overlay.vue @@ -13,7 +13,7 @@
- +
{ }); onUpdated(async () => { await loadData(); + console.log("updated, loadData"); + console.log(props.dataVal); }); async function loadData(): Promise { diff --git a/src/components/devCharacter/duc-detail-relics.vue b/src/components/devCharacter/duc-detail-relics.vue index 66b949d8..6e7ab79b 100644 --- a/src/components/devCharacter/duc-detail-relics.vue +++ b/src/components/devCharacter/duc-detail-relics.vue @@ -14,18 +14,25 @@ import { computed } from "vue"; import DucDetailRelic from "./duc-detail-relic.vue"; interface DucDetailRelicsProps { - data: TGApp.Sqlite.Character.RoleReliquary[]; + data: string; } const props = defineProps(); -const transData = computed(() => { - let relics: (TGApp.Sqlite.Character.RoleReliquary | false)[] = []; - for (let i = 0; i < 5; i++) { - const relic = props.data.find((relic) => relic.pos === i + 1); - if (relic) relics.push(relic); - else relics.push(false); +const transData = computed>(() => { + if (!props.data || props.data === "") return [false, false, false, false, false]; + try { + const parsedData: TGApp.Sqlite.Character.RoleReliquary[] = JSON.parse(props.data); + let relics: Array = []; + for (let i = 0; i < 5; i++) { + const relic = parsedData.find((relic) => relic.pos === i + 1); + if (relic) relics.push(relic); + else relics.push(false); + } + return relics; + } catch (e) { + console.error(e); + return [false, false, false, false, false]; } - return relics; });