diff --git a/src/routes/stock.$code.tsx b/src/routes/stock.$code.tsx index 17756ba..8396807 100755 --- a/src/routes/stock.$code.tsx +++ b/src/routes/stock.$code.tsx @@ -351,12 +351,8 @@ function StockDetail() { ticks.push(added); } ticks.push(last); - return [...new Set(ticks)].sort((a, b) => { - // 按日期排序(MM/DD格式需按MM和DD比较) - const [am, ad] = a.split('/').map(Number); - const [bm, bd] = b.split('/').map(Number); - return am - bm || ad - bd; - }); + // 保持chartData的原始顺序(已按日期升序排列),不做二次排序 + return [...new Set(ticks)]; })(); // 东方财富市场标识:0=深圳(000/002/300), 1=上海(60), 6=科创板(688) @@ -467,6 +463,48 @@ function StockDetail() { )} + + {/* 行情指标合并到顶部卡片 */} +
市盈率(PE)
+{stockInfo.pe > 0 ? stockInfo.pe.toFixed(2) : '-'}
+市净率(PB)
+{stockInfo.pb > 0 ? stockInfo.pb.toFixed(2) : '-'}
+ROE
+0 ? 'text-red-500' : 'text-green-500') : ''}`}> + {latestROE !== null ? `${latestROE.toFixed(2)}%` : '加载中...'} +
+换手率
+{stockInfo.turnoverRate > 0 ? `${stockInfo.turnoverRate}%` : '-'}
+总手
++ {stockInfo.volume > 0 ? `${(stockInfo.volume / 100).toLocaleString()}手` : '-'} +
+成交额
+{formatMoney(stockInfo.amount)}
+总市值
+{stockInfo.totalMarketCap > 0 ? formatMoney(stockInfo.totalMarketCap) : '-'}
+流通市值
+{stockInfo.circulatingMarketCap > 0 ? formatMoney(stockInfo.circulatingMarketCap) : '-'}
+市盈率(PE)
-{stockInfo.pe > 0 ? stockInfo.pe.toFixed(2) : '-'}
-市净率(PB)
-{stockInfo.pb > 0 ? stockInfo.pb.toFixed(2) : '-'}
-ROE(加权净资产收益率)
-0 ? 'text-red-500' : 'text-green-500') : ''}`}> - {latestROE !== null ? `${latestROE.toFixed(2)}%` : '加载中...'} -
-换手率
-{stockInfo.turnoverRate > 0 ? `${stockInfo.turnoverRate}%` : '-'}
-总手
-- {stockInfo.volume > 0 ? `${(stockInfo.volume / 100).toLocaleString()}手` : '-'} -
-成交额
-{formatMoney(stockInfo.amount)}
-总市值
-{stockInfo.totalMarketCap > 0 ? formatMoney(stockInfo.totalMarketCap) : '-'}
-流通市值
-{stockInfo.circulatingMarketCap > 0 ? formatMoney(stockInfo.circulatingMarketCap) : '-'}
-