From d066cb65a3798ae754ede70ca69a9f1d08eec1e4 Mon Sep 17 00:00:00 2001 From: yml2213 Date: Wed, 17 Jun 2026 07:58:01 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E9=A6=96=E9=A1=B5=E4=B8=93?= =?UTF-8?q?=E5=8C=BA=E6=97=A0=E6=B3=95=E5=88=87=E5=9B=9E=E5=85=A8=E9=83=A8?= =?UTF-8?q?:=E4=B8=93=E5=8C=BA=E4=B8=8E=E7=AD=9B=E9=80=89=E6=8C=81?= =?UTF-8?q?=E4=B9=85=E5=8C=96=E8=A7=A3=E8=80=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit zone 此前被纳入 URL/sessionStorage 持久化体系,切回全部专区时 空 query 会回退读取残留的旧 zone 导致专区被弹回。改为纯内存视图 状态,专区可自由切换、不参与筛选持久化。 Co-Authored-By: Claude Opus 4.8 (1M context) --- .../src/features/listings/composables/useHomeFilterQuery.ts | 3 ++- frontend/src/features/listings/views/HomeView.vue | 3 +-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/frontend/src/features/listings/composables/useHomeFilterQuery.ts b/frontend/src/features/listings/composables/useHomeFilterQuery.ts index 09656d5..e0cc5d6 100644 --- a/frontend/src/features/listings/composables/useHomeFilterQuery.ts +++ b/frontend/src/features/listings/composables/useHomeFilterQuery.ts @@ -1,9 +1,10 @@ import type { LocationQuery, LocationQueryRaw } from 'vue-router' +// 注意:zone(专区)不纳入筛选持久化体系,作为独立的视图切换状态。 +// 否则切回“全部专区”时,空 query 会回退读取 sessionStorage 中残留的旧 zone,导致专区被弹回。 export const desktopHomeFilterQueryKeys = [ 'keyword', 'sort', - 'zone', 'server', 'region', 'login_method', diff --git a/frontend/src/features/listings/views/HomeView.vue b/frontend/src/features/listings/views/HomeView.vue index 2fecc67..c2a3ba8 100644 --- a/frontend/src/features/listings/views/HomeView.vue +++ b/frontend/src/features/listings/views/HomeView.vue @@ -189,7 +189,7 @@ function applyRouteQueryToHomeState() { filters.minFireLevel = readQueryNumber(query, 'min_fire_level') filters.maxFireLevel = readQueryNumber(query, 'max_fire_level') sortBy.value = readQueryString(query, 'sort') || 'recommended' - activeZone.value = readQueryString(query, 'zone') || 'all' + // zone 不从 query/storage 恢复,由用户实时点击决定,不参与筛选持久化 } function desktopHomeStateSignature() { @@ -213,7 +213,6 @@ function buildDesktopHomeQueryValues(): Record { return { keyword: filters.keyword.trim() || undefined, sort: sortBy.value === 'recommended' ? undefined : sortBy.value, - zone: activeZone.value === 'all' ? undefined : activeZone.value, server: filters.server, region: filters.region, login_method: filters.loginMethod,