feat: 将 StockQuoteCard 提升到 Tab 容器上方 + 修复 TS 警告

功能变更:
- 将 StockQuoteCard 从 CompanyOverview 移至 Company/index.tsx
- 股票行情卡片现在在切换 Tab 时始终可见

TypeScript 警告修复:
- SubTabContainer: WebkitBackdropFilter 改用 sx 属性
- DetailTable: 重新定义 TableRowData 类型,支持 boolean 索引
- SubscriptionContentNew: 添加类型安全的 AGREEMENT_URLS 索引访问

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

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
zdl
2025-12-18 17:25:21 +08:00
parent f36e210fe8
commit 4b3588e8de
5 changed files with 42 additions and 16 deletions

View File

@@ -1,35 +1,31 @@
// src/views/Company/components/CompanyOverview/index.tsx
// 公司档案 - 主组件(组合层)
// 注StockQuoteCard 已移至 Company/index.tsx放在 Tab 容器上方,切换 Tab 时始终可见
import React from "react";
import { VStack } from "@chakra-ui/react";
import type { CompanyOverviewProps } from "./types";
// 子组件
import StockQuoteCard from "../StockQuoteCard";
import BasicInfoTab from "./BasicInfoTab";
/**
* 公司档案组件
*
* 功能:
* - 显示股票行情卡片(个股详情)
* - 显示基本信息 Tab内部懒加载各子 Tab 数据)
*
* 注意:
* - StockQuoteCard 已提升到 Company/index.tsx 中渲染
* - 确保切换 Tab 时股票行情卡片始终可见
*
* 懒加载策略:
* - BasicInfoTab 内部根据 Tab 切换懒加载数据
* - 各 Panel 组件自行获取所需数据(如 BusinessInfoPanel 调用 useBasicInfo
*/
const CompanyOverview: React.FC<CompanyOverviewProps> = ({ stockCode }) => {
return (
<VStack spacing={6} align="stretch">
{/* 股票行情卡片 - 个股详情 */}
<StockQuoteCard stockCode={stockCode} />
{/* 基本信息内容 - 传入 stockCode内部懒加载各 Tab 数据 */}
<BasicInfoTab stockCode={stockCode} />
</VStack>
<BasicInfoTab stockCode={stockCode} />
);
};

View File

@@ -114,10 +114,13 @@ const tableStyles = `
}
`;
interface TableRowData extends DetailTableRow {
// 表格行数据类型 - 扩展索引签名以支持 boolean
type TableRowData = {
key: string;
isImportant?: boolean;
}
指标: string;
[year: string]: string | number | boolean | null | undefined;
};
const DetailTable: React.FC<DetailTableProps> = ({ data }) => {
const { years, rows } = data;