## 目录重构 - DynamicNewsCard/ → DynamicNews/(含 layouts/, hooks/ 子目录) - EventCard 原子组件 → EventCard/atoms/ - EventDetailModal 独立目录化 - HotEvents 独立目录化(含 CSS) - SearchFilters 独立目录化(CompactSearchBox, TradingTimeFilter) ## 导入路径修复 - EventCard/*.js: 统一使用 @constants/, @utils/, @components/ 别名 - atoms/*.js: 修复移动后的相对路径问题 - DynamicNewsCard.js: 更新 contexts, store, constants 导入 - EventHeaderInfo.js, CompactMetaBar.js: 修复 EventFollowButton 导入 ## Mock Handler 添加 - /api/events/:eventId/expectation-score - 事件超预期得分 - /api/index/:indexCode/realtime - 指数实时行情 ## 警告修复 - CitationMark.js: overlayInnerStyle → styles (Antd 5.x) - CitedContent.js: 移除不支持的 jsx 属性 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
34 lines
910 B
JavaScript
34 lines
910 B
JavaScript
// src/views/Community/components/DynamicNews/ModeToggleButtons.js
|
|
// 事件列表模式切换按钮组
|
|
|
|
import React from 'react';
|
|
import { Button, ButtonGroup } from '@chakra-ui/react';
|
|
|
|
/**
|
|
* 事件列表模式切换按钮组
|
|
* @param {string} mode - 当前模式 'vertical' | 'four-row'
|
|
* @param {Function} onModeChange - 模式切换回调
|
|
*/
|
|
const ModeToggleButtons = React.memo(({ mode, onModeChange }) => {
|
|
return (
|
|
<ButtonGroup size="sm" isAttached>
|
|
<Button
|
|
onClick={() => onModeChange('vertical')}
|
|
colorScheme="blue"
|
|
variant={mode === 'vertical' ? 'solid' : 'outline'}
|
|
>
|
|
列表
|
|
</Button>
|
|
<Button
|
|
onClick={() => onModeChange('four-row')}
|
|
colorScheme="blue"
|
|
variant={mode === 'four-row' ? 'solid' : 'outline'}
|
|
>
|
|
平铺
|
|
</Button>
|
|
</ButtonGroup>
|
|
);
|
|
});
|
|
|
|
export default ModeToggleButtons;
|