feat: StockQuoteCard 根据股票代码获取真实行情数据

- 新增 useStockQuote Hook 获取股票行情
- Company 页面使用 Hook 并传递数据给 StockQuoteCard
- StockQuoteCard 处理 null 数据显示骨架屏
- 股票代码变化时自动刷新行情数据

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
zdl
2025-12-10 11:00:03 +08:00
parent 0997cd9992
commit 8786fa7b06
3 changed files with 120 additions and 9 deletions

View File

@@ -10,6 +10,7 @@ import { loadAllStocks } from '@store/slices/stockSlice';
import { useCompanyStock } from './hooks/useCompanyStock';
import { useCompanyWatchlist } from './hooks/useCompanyWatchlist';
import { useCompanyEvents } from './hooks/useCompanyEvents';
import { useStockQuote } from './hooks/useStockQuote';
// 页面组件
import CompanyHeader from './components/CompanyHeader';
@@ -42,7 +43,10 @@ const CompanyIndex = () => {
dispatch(loadAllStocks());
}, [dispatch]);
// 2. 再初始化事件追踪(传入 stockCode
// 2. 获取股票行情数据
const { data: quoteData, isLoading: isQuoteLoading } = useStockQuote(stockCode);
// 3. 再初始化事件追踪(传入 stockCode
const {
trackStockSearched,
trackTabChanged,
@@ -86,6 +90,8 @@ const CompanyIndex = () => {
{/* 股票行情卡片:价格、关键指标、主力动态、自选股按钮 */}
<StockQuoteCard
data={quoteData}
isLoading={isQuoteLoading}
isInWatchlist={isInWatchlist}
isWatchlistLoading={isWatchlistLoading}
onWatchlistToggle={handleWatchlistToggle}