refactor: Community 目录结构重组 + 修复导入路径 + 添加 Mock 数据
## 目录重构 - 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>
This commit is contained in:
58
src/views/Community/components/EventCard/atoms/EventStats.js
Normal file
58
src/views/Community/components/EventCard/atoms/EventStats.js
Normal file
@@ -0,0 +1,58 @@
|
||||
// src/views/Community/components/EventCard/EventStats.js
|
||||
import React from 'react';
|
||||
import { HStack, Text, Tooltip } from '@chakra-ui/react';
|
||||
import { ViewIcon, ChatIcon, StarIcon } from '@chakra-ui/icons';
|
||||
|
||||
/**
|
||||
* 事件统计信息组件(浏览量、帖子数、关注数)
|
||||
* @param {Object} props
|
||||
* @param {number} props.viewCount - 浏览量
|
||||
* @param {number} props.postCount - 帖子数
|
||||
* @param {number} props.followerCount - 关注数
|
||||
* @param {string} props.size - 尺寸('sm' | 'md',默认 'sm')
|
||||
* @param {number} props.spacing - 间距(默认 3)
|
||||
* @param {Object} props.display - 响应式显示控制(默认 { base: 'none', md: 'flex' })
|
||||
* @param {string} props.mutedColor - 文字颜色(可选)
|
||||
*/
|
||||
const EventStats = ({
|
||||
viewCount = 0,
|
||||
postCount = 0,
|
||||
followerCount = 0,
|
||||
size = 'sm',
|
||||
spacing = 3,
|
||||
display = { base: 'none', md: 'flex' },
|
||||
mutedColor
|
||||
}) => {
|
||||
const fontSize = size === 'sm' ? 'xs' : 'sm';
|
||||
const iconSize = size === 'sm' ? '12px' : '16px';
|
||||
|
||||
return (
|
||||
<HStack spacing={spacing} display={display} color={mutedColor}>
|
||||
{/* 浏览量 */}
|
||||
<Tooltip label="浏览量" placement="top">
|
||||
<HStack spacing={1}>
|
||||
<ViewIcon boxSize={iconSize} />
|
||||
<Text fontSize={fontSize}>{viewCount}</Text>
|
||||
</HStack>
|
||||
</Tooltip>
|
||||
|
||||
{/* 帖子数 */}
|
||||
<Tooltip label="帖子数" placement="top">
|
||||
<HStack spacing={1}>
|
||||
<ChatIcon boxSize={iconSize} />
|
||||
<Text fontSize={fontSize}>{postCount}</Text>
|
||||
</HStack>
|
||||
</Tooltip>
|
||||
|
||||
{/* 关注数 */}
|
||||
<Tooltip label="关注数" placement="top">
|
||||
<HStack spacing={1}>
|
||||
<StarIcon boxSize={iconSize} />
|
||||
<Text fontSize={fontSize}>{followerCount}</Text>
|
||||
</HStack>
|
||||
</Tooltip>
|
||||
</HStack>
|
||||
);
|
||||
};
|
||||
|
||||
export default EventStats;
|
||||
Reference in New Issue
Block a user