小程序多视频同时播放的问题

追格官方小助手/ 2023年03月17日/ 小程序/ 浏览 1806

在微信小程序中,如果一个页面内包含多个视频组件 video,不加控制的话,就会出现多个视频同时播放的情况。


目前,这个“bug”,没有很好的解决方案。普遍采用的方式,就是在页面内加一个变量,记录当前正在播放的视频,当要播放其他视频时,把上一个视频暂停。因为是“基于页面的”办法,所以在所有可能出现多个视频的页面,都需要照做一遍……


//视频播放事件
bindplay(e) {
	//这里的videoid是视频的id
	let videoid = e.currentTarget.id;
	if (this.videoid !== videoid && this.videoContext) {
		//关闭上一个播放的视频
		this.videoContext.stop();
	}
	this.videoid = videoid;
	//创建控制视频标签的实例对象
	this.videoContext = wx.createVideoContext(this.videoid, this);
}


或可尝试,自定义组件给 video组件加一个壳,然后在壳内解决这个问题。这个方案麻烦的是 video 组件属性方法众多,壳要做的事情不免有点啰嗦麻烦……


发表评论

暂无评论,抢个沙发...

客服 工单