Revert "11"
Revert submission 1443
Reason for revert: <合并错误>
Reverted changes: /q/submissionid:1443
Change-Id: Ifc281ddf07de4b2686e270d68d1a5144e8d1aac4
diff --git a/Merge/front/src/components/HomeFeed.jsx b/Merge/front/src/components/HomeFeed.jsx
index 0f3c0fe..82e027a 100644
--- a/Merge/front/src/components/HomeFeed.jsx
+++ b/Merge/front/src/components/HomeFeed.jsx
@@ -8,7 +8,6 @@
import { getUserInfo } from '../utils/auth'
import { deepRecommend } from '../api/recommend_rhj'
import postsAPI from '../api/posts_api'
-import MediaPreview from './MediaPreview'
import '../style/HomeFeed.css'
const categories = [
@@ -60,10 +59,9 @@
title: d.title,
author: `作者 ${d.user_id}`,
avatar: `https://i.pravatar.cc/40?img=${d.user_id}`,
- media: d.media_urls?.[0] || '', // 改为 media,支持图片和视频
+ img: d.media_urls?.[0] || '',
likes: d.heat,
- content: d.content || '',
- mediaUrls: d.media_urls || [] // 保存所有媒体URL
+ content: d.content || ''
}
} catch {
return {
@@ -71,10 +69,9 @@
title: item.title,
author: item.author || '佚名',
avatar: `https://i.pravatar.cc/40?img=${item.id}`,
- media: item.img || '',
+ img: item.img || '',
likes: item.heat || 0,
- content: item.content || '',
- mediaUrls: []
+ content: item.content || ''
}
}
})
@@ -104,10 +101,9 @@
title: d.title,
author: `作者 ${d.user_id}`,
avatar: `https://i.pravatar.cc/40?img=${d.user_id}`,
- media: d.media_urls?.[0] || '', // 改为 media,支持图片和视频
+ img: d.media_urls?.[0] || '',
likes: d.heat,
- content: d.content || '',
- mediaUrls: d.media_urls || [] // 保存所有媒体URL
+ content: d.content || ''
}
} catch {
// 拉详情失败时兜底
@@ -116,10 +112,9 @@
title: item.title,
author: item.author || '佚名',
avatar: `https://i.pravatar.cc/40?img=${item.id}`,
- media: item.img || '',
+ img: item.img || '',
likes: item.heat || 0,
- content: item.content || '',
- mediaUrls: []
+ content: item.content || ''
}
}
})
@@ -149,10 +144,9 @@
title: d.title,
author: `作者 ${d.user_id}`,
avatar: `https://i.pravatar.cc/40?img=${d.user_id}`,
- media: d.media_urls?.[0] || '', // 改为 media,支持图片和视频
+ img: d.media_urls?.[0] || '',
likes: d.heat,
- content: d.content || '',
- mediaUrls: d.media_urls || [] // 保存所有媒体URL
+ content: d.content || ''
}
} catch {
// 拉详情失败时兜底
@@ -161,10 +155,9 @@
title: item.title,
author: item.author || '佚名',
avatar: `https://i.pravatar.cc/40?img=${item.id}`,
- media: item.img || '',
+ img: item.img || '',
likes: item.heat || 0,
- content: item.content || '',
- mediaUrls: []
+ content: item.content || ''
}
}
})
@@ -194,10 +187,9 @@
title: d.title,
author: `作者 ${d.user_id}`,
avatar: `https://i.pravatar.cc/40?img=${d.user_id}`,
- media: d.media_urls?.[0] || '', // 改为 media,支持图片和视频
+ img: d.media_urls?.[0] || '',
likes: d.heat,
- content: d.content || '',
- mediaUrls: d.media_urls || [] // 保存所有媒体URL
+ content: d.content || ''
}
} catch {
return {
@@ -205,10 +197,9 @@
title: item.title,
author: item.author || '佚名',
avatar: `https://i.pravatar.cc/40?img=${item.id}`,
- media: item.img || '',
+ img: item.img || '',
likes: item.heat || 0,
- content: item.content || '',
- mediaUrls: []
+ content: item.content || ''
}
}
})
@@ -269,11 +260,9 @@
id: d.id,
title: d.title,
author: `作者 ${d.user_id}`,
- authorId: d.user_id,
- avatar: `http://192.168.5.200:8080/static/profile.webp`,
- media: d.media_urls?.[0] || '', // 改为 media,支持图片和视频
- likes: d.heat,
- mediaUrls: d.media_urls || [] // 保存所有媒体URL
+ // avatar: `https://i.pravatar.cc/40?img=${d.user_id}`,
+ img: d.media_urls?.[0] || '', // 用第一张媒体作为封面
+ likes: d.heat
}
})
)
@@ -315,8 +304,6 @@
}
}
- const [previewImg, setPreviewImg] = useState(null)
-
const handlePostClick = (postId) => {
navigate(`/post/${postId}`)
}
@@ -444,20 +431,7 @@
) : (
items.map(item => (
<div key={item.id} className="feed-card" onClick={() => handlePostClick(item.id)}>
- {item.media && (
- <MediaPreview
- url={item.media}
- alt={item.title}
- className="card-img"
- onClick={(url) => {
- // 对于图片,显示预览
- if (!url.toLowerCase().includes('video') && !url.includes('.mp4') && !url.includes('.webm')) {
- setPreviewImg(url)
- }
- }}
- style={{ cursor: 'pointer' }}
- />
- )}
+ {item.img && <img className="card-img" src={item.img} alt={item.title} />}
<h3 className="card-title">{item.title}</h3>
{item.content && <div className="card-content">{item.content.slice(0, 60) || ''}</div>}
<div className="card-footer">
@@ -475,37 +449,6 @@
)}
</div>
)}
-
- {/* 图片预览弹窗 */}
- {previewImg && (
- <div
- className="img-preview-mask"
- style={{
- position: 'fixed',
- zIndex: 9999,
- top: 0,
- left: 0,
- right: 0,
- bottom: 0,
- background: 'rgba(0,0,0,0.7)',
- display: 'flex',
- alignItems: 'center',
- justifyContent: 'center'
- }}
- onClick={() => setPreviewImg(null)}
- >
- <img
- src={previewImg}
- alt="大图预览"
- style={{
- maxWidth: '90vw',
- maxHeight: '90vh',
- borderRadius: 12,
- boxShadow: '0 4px 24px #0008'
- }}
- />
- </div>
- )}
</div>
)
}