这里我用的uni-app开发的小程序,微信小程序原生开发也是同理, 写法和api简单改下就行

当你的页面上有多个视频video组件标签时, 会出现多个视频可以同时播放的问题,这样显然是不正常的, 那么解决办法如下

调用 uni.createVideoContext 来创建并返回 video 上下文 videoContext 对象

假设页面有两个视频的话, 第一个视频开始播放时调用 videoContext 对象的暂停方法pause, 暂停第二个视频即可

但是很多情况下, 页面的video组件标签的个数是不确定的, 是通过列表循环出来的, 那么解决办法如下

<view v-for="(item,index) in videoList" :key="index">
<video :id="`video${index}`" :src="item" controls v-if="item" @play='videoPlay(index)'></video>
</view>

给video组件标签加上一个video和下标加起来的动态id, 方便uni.createVideoContext 传入第一个参数获取video上下文对象

声明一个变量 playIdx 记录上一次播放视频的下标

videoPlay(index) {
if (this.playIdx !== '') {
console.log(`暂停上一个下标为${this.playIdx}的视频`);
let videoContext = uni.createVideoContext(`video${this.playIdx}`)
videoContext .pause()
} this.playIdx = index
}

这样即可

(注意.在组件中使用uni.createVideoContext时, 要在第二个参数传入this, 否则不生效)

uni-app微信小程序解决多个视频同时播放问题的更多相关文章

  1. uni app以及小程序 --环境搭建以及编辑器

    https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html 根据以上网页下载自己电脑相应的版本的微信开发者工具(目录 ...

  2. 微信小程序 解决 数字粗细不一 的bug

    1.bug 2.原因解析 微信小程序本身字体问题 3.解决方案 设置字体 font-family: Microsoft YaHei; .

  3. fiddler学习总结--手机端(APP/微信小程序)抓包

    步骤一.手机和电脑要在同一个局域网中 步骤二.完成fiddler的基本配置,与web端抓包一样: TOOLS-->options-->connections-->1.设置端口:2.勾 ...

  4. 微信小程序-图片、录音、音频播放、音乐播放、视屏、文件

    图片: wx.chooseImage(OBJECT) 从本地相册选择图片或使用相机拍照. OBJECT参数说明: 注:文件的临时路径,在小程序本次启动期间可以正常使用,如需持久保存,需在主动调用 wx ...

  5. 微信小程序------媒体组件(视频,音乐,图片)

    今天主要是简单的讲一下小程序当中的媒体组件,媒体组件包括:视频,音乐,图片等. 先来看看效果图: 1:图片Image <!-- scaleToFill:不保持纵横比缩放图片,使图片的宽高完全拉伸 ...

  6. 微信小程序-解决下拉刷新报错

    关于“enablePullDownRefresh”: “true” 一.使用方式 在 Page 中定义 onPullDownRefresh 处理函数,监听该页面用户下拉刷新事件.需要在 config ...

  7. 微信小程序解决地图上的层级关系

    在有带地图的手机页面上,view无法显示在地图上方,所以,在wxml中,使用: <cover-view></cover-view> 能使view显示在地图上 注: 在该标签内部 ...

  8. 微信小程序 wxParse插件显示视频

    修改wxParse/html2json.js 文件 ,在 html2json(html, bindName) 方法里 var node = { node: 'element', tag: tag, } ...

  9. 程序员的又一春,微信小程序带来的一个赚钱机遇

    微信小程序可能是原生的机遇,在程序员面对微信小程序的恐惧中说其实也是我们程序员创业的春天或者挣外快的一个机遇. 为什么这么说呢?且听我慢慢给你分析 成本角度 你想想,会ios开发的可能只会ios,会安 ...

  10. 【转】微信小程序给程序员带来的可能是一个赚钱的机遇

    自上周被微信小程序刷屏之后,这周大家都在谈微信小程序能够带来哪些红利的话题,其实我想从程序员的角度来谈谈,带给我们程序员来的红利,或许是我们程序员创业或者赚钱的机遇. 其实我从<作为移动开发程序 ...

随机推荐

  1. view 相关代码片段笔记

    代码中动态创建view,并把AttributeSet加入到当前自定义的view中,动态创建属性相关 //https://blog.csdn.net/chenhuakang/article/detail ...

  2. vue - 解决页面跳转到外部链接后,ios回退到本页面,生命周期,路由导航守卫钩子都无法触发的问题

    虽然加班,最近心情还是可以的,没多少bug找上门. 乐级生悲,遇到了个奇葩的坑,花了点时间百度才解决...但我离不开的'板砖'是安卓的,对此坑是抗拒的,完全没问题... #此坑描述 ...订单详情某按 ...

  3. Solution Set - 杭电多校 2022 Day2 一句话题解

    A:看了题就很容易想到虚树吧,建出虚树后考虑整体扫一遍虚树,注意到这是一棵根向树,那么统计其实十分简单,将对 \(C\) 类节点的标记下放,\(A,B\) 类节点同时上传,如果在 DFS 的过程中发现 ...

  4. tp3.2 写入日志

    function logs($content, $subDir = ''){ $subDir = trim($subDir, '/\\'); if (empty($content)) return f ...

  5. LP1-3:一支钢笔的测试

    UI: 长.宽 .高 钢笔:笔身.笔尖.笔帽 功能: 写字:出水量比较合适 笔帽能扣上,不容易掉 钢笔笔夹 打水 笔尖的粗细程度 容错性: 不能漏水 易用性: 是否光滑 笔尖是否可以换 笔囊是否可以换 ...

  6. CRLF和LF的差异

    CRLF, LF 是用来表示文本换行的方式.CR(Carriage Return) 代表回车,对应字符 '\r':LF(Line Feed) 代表换行,对应字符 '\n'.由于历史原因,不同的操作系统 ...

  7. PAT-basic-1024 科学计数法 java

    一.题目 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [+-][1-9].[0-9]+E[+-][0-9]+,即数字的整数部分只有 1 位,小数部分至少有 1 位,该 ...

  8. How to Check and Repair EXT4 Filesystem in Linux

    The fsck (stands for File System Consistency Check) is used to check and repair one or more Linux fi ...

  9. Windows MFC HTTP POST请求 函数流程

    Windows MFC HTTP POST请求 函数流程 1 CString m_strHttpUrl(_T("http://10.200.80.86:8090/course/upload& ...

  10. (已解决)问题:windows下,为THINKPHP配置apache虚拟主机。

    1. 环境和需求 win10_x64,php7,apache24,thinkphp5. 现在,我要用apache给THINKPHP的一个项目设置一个虚拟主机,需要配置. 2. 步骤 a. 首先,找到h ...