fix(community): 修复视频动态刷新后视频消失、点击视频误跳详情

- getPosts 客户端字段映射遗漏 videoUrl/videoCover,onShow 重新拉取后视频被丢弃

- 视频区域与播放器增加 catchtap 阻止冒泡,点击播放不再跳转详情页

- 顺带修正 uploadMediaFile 上方注释块错位
这个提交包含在:
xcbyy
2026-10-31 10:59:15 +08:00
父节点 23f500f623
当前提交 a1907f18a8
共有 3 个文件被更改,包括 12 次插入 和 3 次删除

查看文件

@@ -575,6 +575,8 @@ export async function getPosts(category, userId) {
content: p.content || '',
topics: Array.isArray(p.topics) ? p.topics : [],
images: Array.isArray(p.images) ? p.images : [],
videoUrl: p.videoUrl || '',
videoCover: p.videoCover || '',
actionText: p.actionText || '聊一聊',
likes: Number(p.likes) || 0,
liked: finalLiked || isLocallyLiked,
@@ -1081,8 +1083,6 @@ function uploadMediaFile(tempFilePath, endpoint, kindLabel) {
});
}
/**
* 客户端前端前置检测文本安全 (对接 security.msgSecCheck)
/**
* 真实上传本地图片至服务端持久化静态存储
* @param {string} tempFilePath 本地图片临时路径
@@ -1102,6 +1102,8 @@ export function uploadVideo(tempFilePath) {
}
/**
* 客户端前端前置检测文本安全 (对接 security.msgSecCheck)
*/
export async function checkTextSecurity(content) {
try {

查看文件

@@ -124,7 +124,7 @@
</view>
<!-- 短视频(可与图片同发) -->
<view class="post-video-wrap" v-if="post.videoUrl">
<view class="post-video-wrap" v-if="post.videoUrl" @click.stop="stopPropagation">
<video
class="post-video"
:src="post.videoUrl"
@@ -134,6 +134,7 @@
:show-center-play-btn="true"
:enable-progress-gesture="true"
:show-fullscreen-btn="true"
@click.stop="stopPropagation"
/>
</view>

查看文件

@@ -56,6 +56,12 @@ describe('友圈短视频发布链路', () => {
expect(detail).toContain('post.videoUrl');
});
it('动态列表映射必须保留视频字段,且视频点击不得冒泡跳转详情', () => {
expect(api).toContain("videoUrl: p.videoUrl || ''");
expect(api).toContain("videoCover: p.videoCover || ''");
expect(community).toContain('@click.stop="stopPropagation"');
});
it('后台动态管理必须可预览短视频', () => {
expect(admin).toContain('openVideoPreview');
expect(admin).toContain('record.videoUrl');