diff --git a/src/main/ets/market-ranking/MarketRankingNodeComponent.ets b/src/main/ets/market-ranking/MarketRankingNodeComponent.ets index e78774e..832d2af 100644 --- a/src/main/ets/market-ranking/MarketRankingNodeComponent.ets +++ b/src/main/ets/market-ranking/MarketRankingNodeComponent.ets @@ -11,7 +11,7 @@ import { contractsToPlaceholderCardData, } from './MarketRankingDataMapper'; import { MarketRankingHqRequestClient } from '../node/clients/MarketRankingHqRequestClient'; -import { formatGreatNumber, formatPercent, formatPrice, riseFallColor } from '../common/NumberFormat'; +import { formatGreatNumber, formatPercent, riseFallColor } from '../common/NumberFormat'; import { AllCardsCard } from '../node/model/AiDiagnosisNodeModel'; import { PERIOD_RANGES, TAB_METRICS } from './MarketRankingConstant'; import { enableDarkMode } from '@kernel/theme_manager'; @@ -606,8 +606,8 @@ export struct MarketRankingNodeComponent { .width('35%') .maxLines(1) .textOverflow({ overflow: TextOverflow.Ellipsis }) - Text(formatPrice(item.price)) - .fontColor(riseFallColor(item.price_chg)) + Text(item.price !== undefined ? item.price.toString() : '--') + .fontColor(this.getPriceColor(item.price_chg)) .fontSize(16) .fontWeight(500) .maxFontSize(16) @@ -720,4 +720,16 @@ export struct MarketRankingNodeComponent { const raw = (metricId === MetricId.RISE_SPEED || metricId === MetricId.FALL_SPEED) ? item.chg_speed : item.price_chg; return riseFallColor(raw); } + + private getPriceColor(priceChg?: number): ResourceStr { + if (priceChg === undefined) { + return $r('app.color.elements_text_primary_02') + } + if (priceChg > 0) { + return $r('app.color.price_up_100') + } else if (priceChg < 0) { + return $r('app.color.price_down_100') + } + return $r('app.color.elements_text_primary_02') + } }