fix: 修复 Antd 和 React 废弃 API 警告

- AutoComplete/Select: dropdownStyle -> styles.popup.root
- AutoComplete/Select: popupClassName -> classNames.popup.root
- 移除 WebkitBackdropFilter(Chakra backdropFilter 自动处理)
- Table rowKey: 使用唯一标识符替代 index 参数

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

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
zdl
2025-12-19 13:15:09 +08:00
parent 010ed9b5bf
commit 92019ca92d
5 changed files with 12 additions and 11 deletions

View File

@@ -204,7 +204,6 @@ const SubTabContainer: React.FC<SubTabContainerProps> = memo(({
<TabList <TabList
bg={theme.bg} bg={theme.bg}
backdropFilter="blur(20px)" backdropFilter="blur(20px)"
sx={{ WebkitBackdropFilter: 'blur(20px)' }}
borderBottom="1px solid" borderBottom="1px solid"
borderColor={theme.borderColor} borderColor={theme.borderColor}
borderRadius={compact ? 0 : DEEP_SPACE.radiusLG} borderRadius={compact ? 0 : DEEP_SPACE.radiusLG}

View File

@@ -85,14 +85,14 @@ const SearchBox = memo<{
return ( return (
<Box sx={SEARCH_BOX_SX}> <Box sx={SEARCH_BOX_SX}>
<AutoComplete <AutoComplete
popupClassName="fui-autocomplete-dropdown" classNames={{ popup: { root: 'fui-autocomplete-dropdown' } }}
styles={{ popup: { root: DROPDOWN_STYLE } }}
value={inputCode} value={inputCode}
options={stockOptions} options={stockOptions}
onSearch={doSearch} onSearch={doSearch}
onSelect={handleSelect} onSelect={handleSelect}
onChange={setInputCode} onChange={setInputCode}
style={AUTOCOMPLETE_STYLE} style={AUTOCOMPLETE_STYLE}
dropdownStyle={DROPDOWN_STYLE}
notFoundContent={isSearching ? <Spin size="small" /> : null} notFoundContent={isSearching ? <Spin size="small" /> : null}
> >
<Input <Input

View File

@@ -215,7 +215,7 @@ const ShareholdersTable: React.FC<ShareholdersTableProps> = ({
<Table <Table
columns={columns} columns={columns}
dataSource={shareholders.slice(0, 10)} dataSource={shareholders.slice(0, 10)}
rowKey={(record: Shareholder, index?: number) => `${record.shareholder_name}-${index}`} rowKey={(record: Shareholder) => `${record.shareholder_name}-${record.shareholder_rank ?? ''}-${record.end_date ?? ''}`}
pagination={false} pagination={false}
size={isMobile ? "small" : "middle"} size={isMobile ? "small" : "middle"}
scroll={{ x: isMobile ? 400 : undefined }} scroll={{ x: isMobile ? 400 : undefined }}

View File

@@ -44,15 +44,19 @@ const PeriodSelector: React.FC<PeriodSelectorProps> = memo(({
background: 'transparent', background: 'transparent',
}} }}
size="small" size="small"
popupClassName="period-selector-dropdown" classNames={{ popup: { root: 'period-selector-dropdown' } }}
styles={{
popup: {
root: {
background: '#1A202C',
borderColor: 'rgba(212, 175, 55, 0.3)',
},
},
}}
options={periodOptions.map((period) => ({ options={periodOptions.map((period) => ({
value: period, value: period,
label: `最近${period}`, label: `最近${period}`,
}))} }))}
dropdownStyle={{
background: '#1A202C',
borderColor: 'rgba(212, 175, 55, 0.3)',
}}
/> />
<IconButton <IconButton
icon={<RefreshCw size={14} className={isLoading ? 'spin' : ''} />} icon={<RefreshCw size={14} className={isLoading ? 'spin' : ''} />}

View File

@@ -103,7 +103,6 @@ export const glassCardStyle = {
container: { container: {
bg: DEEP_SPACE_THEME.bgGlass, bg: DEEP_SPACE_THEME.bgGlass,
backdropFilter: `blur(${DEEP_SPACE_THEME.blur})`, backdropFilter: `blur(${DEEP_SPACE_THEME.blur})`,
WebkitBackdropFilter: `blur(${DEEP_SPACE_THEME.blur})`,
borderRadius: DEEP_SPACE_THEME.radiusXL, borderRadius: DEEP_SPACE_THEME.radiusXL,
border: `1px solid ${DEEP_SPACE_THEME.borderGlass}`, border: `1px solid ${DEEP_SPACE_THEME.borderGlass}`,
boxShadow: `${DEEP_SPACE_THEME.floatShadow}, ${DEEP_SPACE_THEME.innerGlow}`, boxShadow: `${DEEP_SPACE_THEME.floatShadow}, ${DEEP_SPACE_THEME.innerGlow}`,
@@ -122,7 +121,6 @@ export const glassCardStyle = {
containerGold: { containerGold: {
bg: DEEP_SPACE_THEME.bgGlass, bg: DEEP_SPACE_THEME.bgGlass,
backdropFilter: `blur(${DEEP_SPACE_THEME.blur})`, backdropFilter: `blur(${DEEP_SPACE_THEME.blur})`,
WebkitBackdropFilter: `blur(${DEEP_SPACE_THEME.blur})`,
borderRadius: DEEP_SPACE_THEME.radiusXL, borderRadius: DEEP_SPACE_THEME.radiusXL,
border: `1px solid ${DEEP_SPACE_THEME.borderGold}`, border: `1px solid ${DEEP_SPACE_THEME.borderGold}`,
boxShadow: `${DEEP_SPACE_THEME.glowGold}, ${DEEP_SPACE_THEME.floatShadow}, ${DEEP_SPACE_THEME.innerGlow}`, boxShadow: `${DEEP_SPACE_THEME.glowGold}, ${DEEP_SPACE_THEME.floatShadow}, ${DEEP_SPACE_THEME.innerGlow}`,