uniapp页面里面的视频,在app端如何实现显示封面图
一开始使用了video组件里面的poster,然后利用canvas获取视频的第一帧作为封面图,结果一运行起来很多莫名其妙的错误。所以我想了一个简单的方法,页面加载后,让全部视频先自动播放,播放一秒后,再全部自动停止,没想到这个方案效果还挺好,直接上代码:<videov-if="item.video_
一开始使用了video组件里面的poster,然后利用canvas获取视频的第一帧作为封面图,结果一运行起来很多莫名其妙的错误。
所以我想了一个简单的方法,页面加载后,让全部视频先自动播放,播放一秒后,再全部自动停止,没想到这个方案效果还挺好,直接上代码:
<video
v-if="item.video_status"
class="model-card"
:src="item.url"
:id="`video-${index}`"
:direction="0"
:show-play-btn="true"
mode="widthFix"
autoplay="true"
muted="true"
@play="onVideoPlay(index)"
></video>1、先让视频自动静音播放:muted="true",autoplay="true"
2、然后监听播放事件:@play="onVideoPlay(index)" <!-- 监听播放事件 -->
3、最后执行停止播放视频
// 视频开始播放时触发
onVideoPlay(index) {
const videoId = `video-${index}`;
const videoContext = uni.createVideoContext(videoId, this);
// 1秒后自动暂停
setTimeout(() => {
videoContext.pause(); // 暂停视频
}, 1000);
},



