<view v-for="(video, idx) in item" :key="idx">
<txv-video :id="video.playerid" @play="handleVideoPlay($event,video)" :autoplay="autoplay" :showProgress=false :vid="video.vid" :playerId="video.playerid"></txv-video>
</view>
以上是模板代码
handleVideoPlay(event, e) {
let currentId=e.playerid
//let currentId='vnode-0'
console.log(currentId,"1")
let videoContent = uni.createVideoContext(currentId);
//let videoContent = uni.createVideoContext(currentId,this);//这个也试过,不行
console.log(videoContent,"2")
setTimeout(() => {
console.log("延迟了 1 秒");
videoContent.pause()
console.log("执行完毕");
}, "1000");
},
期望功能:同一页中播放一个视频暂停其他视频(我一页只显示2个视频,使用swiper标签做的横向滑动切换,这个没问题)
思路:先实现暂停功能
然后:data()return{video:"''}中写一个video用来储存播放视频的id,if(!this.video),直接播放,如果存在,else,暂停储存id对应的视频,播放新的,将this.video=新的视频id。
情况:videoContent打印出来的的确是那些方法,但调用后视频实际没有暂停,两个打印语句都正常打印
2***@qq.com (作者)
txv-video是腾讯视频插件,小程序播放视频需要文娱资质,公司没有,参照的http://t.csdnimg.cn/GZ17m
2024-07-29 11:56