From 17c51c44c7d00d25604ebed61ca243cff256f7ea Mon Sep 17 00:00:00 2001 From: claude_dev Date: Sun, 16 Aug 2026 21:56:52 +0800 Subject: [PATCH] =?UTF-8?q?feat(frontend):=20=E7=AD=96=E7=95=A5=E5=BA=93?= =?UTF-8?q?=E9=BB=98=E8=AE=A4=E7=84=A6=E7=82=B9=3D=E4=B8=8A=E6=AC=A1?= =?UTF-8?q?=E6=B5=8F=E8=A7=88=E7=9A=84=E7=AD=96=E7=95=A5=E2=80=94=E2=80=94?= =?UTF-8?q?=E7=94=A8=E6=88=B72026-08-16:=E8=BF=9B=E7=AD=96=E7=95=A5?= =?UTF-8?q?=E5=BA=93=E9=BB=98=E8=AE=A4=E8=90=BD=E4=B8=AA=E8=82=A1=E7=AC=AC?= =?UTF-8?q?=E4=B8=80=E4=B8=AA=E4=B8=8D=E5=AF=B9,=E5=BA=94=E7=BB=84?= =?UTF-8?q?=E5=90=88=E4=BC=98=E5=85=88=E4=B8=94=E6=9C=80=E5=A5=BD=E8=AE=B0?= =?UTF-8?q?=E4=BD=8F=E4=B8=8A=E6=AC=A1;onMounted=E9=80=89=E7=84=A6?= =?UTF-8?q?=E7=82=B9=E6=94=B9=E4=B8=89=E7=BA=A7:localStorage=E4=B8=8A?= =?UTF-8?q?=E6=AC=A1=E6=B5=8F=E8=A7=88(strategy.lastFile,=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E8=BF=98=E5=9C=A8=E5=88=97=E8=A1=A8=E6=89=8D=E6=9C=89?= =?UTF-8?q?=E6=95=88)=E2=86=92=E7=BB=84=E5=90=88=E7=BB=84=E7=AC=AC?= =?UTF-8?q?=E4=B8=80=E4=B8=AA=E2=86=92=E7=AC=AC=E4=B8=80=E4=B8=AA=E5=85=9C?= =?UTF-8?q?=E5=BA=95;selectFile=E5=86=99=E5=85=A5=E8=AE=B0=E5=BD=95(?= =?UTF-8?q?=E9=9A=90=E7=A7=81=E6=A8=A1=E5=BC=8F=E5=86=99=E5=A4=B1=E8=B4=A5?= =?UTF-8?q?=E5=BF=BD=E7=95=A5);build=E7=BB=BF(vue-tsc)=20[nas]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/views/strategy/List.vue | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/frontend/src/views/strategy/List.vue b/frontend/src/views/strategy/List.vue index 755b473..f4c5520 100644 --- a/frontend/src/views/strategy/List.vue +++ b/frontend/src/views/strategy/List.vue @@ -34,7 +34,14 @@ onMounted(async () => { ]) files.value = f.data.files instances.value = ins - if (files.value.length) selectedFile.value = files.value[0].name + if (files.value.length) { + // 默认焦点:上次浏览的策略(localStorage) → 组合组第一个 → 第一个 + const remembered = files.value.find( + (x) => x.name === localStorage.getItem('strategy.lastFile')) + selectedFile.value = (remembered + || files.value.find((x) => x.type === 'portfolio') + || files.value[0]).name + } } catch { ElMessage.error('策略库加载失败') } finally { @@ -93,6 +100,8 @@ const selectedMeta = computed(() => files.value.find((f) => f.name === selectedF function selectFile(name: string): void { selectedFile.value = name + // 记住本次浏览的策略,下次进策略库直达 + try { localStorage.setItem('strategy.lastFile', name) } catch { /* 隐私模式等 */ } inspection.value = false }