From 7419e0ed71399f9c89226b56eb9c979243d0d8e3 Mon Sep 17 00:00:00 2001 From: clz Date: Tue, 28 Jul 2026 15:39:44 +0800 Subject: [PATCH] =?UTF-8?q?fix(market-ranking):=20=E6=8C=81=E4=B9=85?= =?UTF-8?q?=E5=8C=96=E5=B1=95=E5=BC=80=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MarketRankingNodeComponent.ets | 20 ++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/main/ets/market-ranking/MarketRankingNodeComponent.ets b/src/main/ets/market-ranking/MarketRankingNodeComponent.ets index 2873c6b..a300b83 100644 --- a/src/main/ets/market-ranking/MarketRankingNodeComponent.ets +++ b/src/main/ets/market-ranking/MarketRankingNodeComponent.ets @@ -15,14 +15,13 @@ import { formatGreatNumber, formatPercent, riseFallColor } from '../common/Numbe import { AllCardsCard } from '../node/model/AiDiagnosisNodeModel'; import { PERIOD_RANGES, TAB_METRICS } from './MarketRankingConstant'; import { enableDarkMode } from '@kernel/theme_manager'; -import { EmitterConstants, GlobalContext, jumpToQuote } from 'biz_common'; +import { EmitterConstants, GlobalContext, jumpToQuote, PreferenceService } from 'biz_common'; import { RouterUtil } from '../util/RouterUtil'; const NORMAL_SIZE = 3; const MAX_SIZE = 5; -const UNFOLDED_STORAGE_KEY = 'firstPageMarketRankingUnfolded'; - -PersistentStorage.persistProp(UNFOLDED_STORAGE_KEY, false); +const SP_FILE_NAME_FIRST_PAGE_MARKET_RANKING = 'sp_file_name_first_page_market_ranking'; +const SP_KEY_FIRST_PAGE_MARKET_RANKING_EXPAND = 'sp_key_first_page_market_ranking_expand'; @Component export struct MarketRankingNodeComponent { @@ -42,7 +41,7 @@ export struct MarketRankingNodeComponent { // Tab 与展开状态 @State primaryIdx: number = 0; @State secondaryIdx: number = 0; - @StorageLink(UNFOLDED_STORAGE_KEY) unfolded: boolean = false; + @State unfolded: boolean = false; // Tab 滚动区域状态 @State tabViewportWidth: number = 0; @@ -75,6 +74,11 @@ export struct MarketRankingNodeComponent { aboutToAppear(): void { this.isComponentActive = true; + this.unfolded = PreferenceService.getBooleanValueSync( + SP_FILE_NAME_FIRST_PAGE_MARKET_RANKING, + SP_KEY_FIRST_PAGE_MARKET_RANKING_EXPAND, + false, + ); this.updateCardConfig(); if (this.firstPageVisible) { this.subscribeTcpNetStatus(); @@ -642,6 +646,12 @@ export struct MarketRankingNodeComponent { private toggleUnfolded(): void { this.unfolded = !this.unfolded; + PreferenceService.putVal( + SP_FILE_NAME_FIRST_PAGE_MARKET_RANKING, + SP_KEY_FIRST_PAGE_MARKET_RANKING_EXPAND, + this.unfolded, + true, + ); } private showTabGradient(): boolean {