weex-14-video组件使用

本节学习目标

<video>组件的使用

他可以实现那些功能?

  • 播放网络视频
  • 设置播放或者暂停
  • 自动播放
  • 监测各种事件
  • 支持多个<video>同时播放多个视频
  • controls在网页上显示工具条
  • 唯一合法的子标签 <text>

话不多少直接进入主题

先写好基本内容

<template>
  <div>
    <video class="video" ></video>
  </div>
</template>
<style scoped>
  .video {
width: 630px;
height: 350px;
margin-top: 60px;
margin-left: 60px;
}
</style>
<script>
  export default {
  }
</script>

1.播放网络视频

871E9D63-B0AA-46DE-A2BC-67F0FA2C85FF.png

下面是一个网络视频地址
http://flv2.bn.netease.com/videolib3/1611/01/XGqSL5981/SD/XGqSL5981-mobile.mp4

播放视频很简单值需要设置标签的src字段即可如下

 <video class="video"  src="http://flv2.bn.netease.com/videolib3/1611/01/XGqSL5981/SD/XGqSL5981-mobile.mp4"></vedio>

注意我上面的写法是把地址直接写死的,一般开发这个src值都是从网络获取的,所以我们要给它绑定变量如下

      <video class="video" :src="src"></vedio>

解释

格式很简单,只需要在src前面添加: 即可,当然我们也可以不用这样的简写,完整的写法为v-bind:src

2.设置视频的播放状态

设置标签的字典play-status 可以设的值为play或者pause
这个值决定播放器的播放状态,有了这个属性,我们就可以通过变量来控制播放器的播放了

<video class="video" :src="src" play-status='pause'></video>

3.设置自动播放

当我们打开页面的时候,是否让视频自动播放,我们可以通过两种方式解决

第一种.就是设置播放状态为play

<video class="video" :src="src" play-status='play'></video>

第二种 使用‘auto-play’字段

<video class="video" :src="src" auto-play='true'></video>

问题:如果我们同时设置了auto-play='true'和play-status='pause',播放器是播放还是暂停呢?

如果初次进入页面同时这个两这个值,会以'auto-play'为准,也就是自动播放

4.监测各种事件

事件主要有以下几种

  • start:当 playback 的状态是 Playing 时触发

  • pause:当 playback 的状态是 Paused 时触发

  • finish:当 playback 的状态是 Finished 时触发

  • fail:当 playback 状态是 Failed 时触发

    <video class="video" :src="src" auto-play="false"  
    @start="onstart" @pause="onpause" @finish="onfinish" @fail="onfail" play-status='pause'></video>
    

5.支持多个<video>同时播放多个视频

可能这个需求不是很常见,但是这个标签可以实现同时播放多个视频的需求

<template>
  <div>
    <video class="video" :src="src" ></video>
     <video class="video" :src="src"></video>
    <video class="video" :src="src" ></video>
  </div>
</template>
04F97D5C-A4A0-486C-8285-B4957708F045.png

controls网页上显示工具条

我们发现上面的截图没有工具条,这个是网页上的截图,手机上是有工具条的,原因很简单,如果你的标签就算没有添加controls字段,手机上的播放器也会显示工具条,因为原生的播放器不支持隐藏工具条功能,但是网页是支持这个属性的!那么怎么让网页显示这个工具条呢?

<video class="video" :src="src" controls></video>
<video class="video" :src="src" controls="controls"></video>
<video class="video" :src="src" controls></video>

注意

我使用了两种写法controls或者controls='controls',都可以的

B83EA9BB-4D3B-49F4-9488-A3AF3D6F80F0.png

唯一合法的子标签 <text>

不过这个就是个坑,因为你设置了子标签,它会默认在视频的下面,如果你真的想要,给视频上放文字,如下面

57FC0CB8-B0DF-4FAE-9ED0-93AB7BF56C90.png

你可以使用绝对定位方式将标签添加到视频组件的上层

<template>
  <div>
    <video class="video" :src="src" controls></video>
        <text class="text">弹幕</text>
  </div>
</template>

布局代码如下

<style scoped>
  .video {
  width: 630px;
  height: 350px;
  margin-top: 60px;
  margin-left: 60px;
  }
  .text{
position: absolute;  // 设置布局方式
top:60px; // 距离父视图上边距为60px
left: 60px; // 距离父视图左边距为60px
background-color: red;
  }
</style>

关于视频组件暂时讲解到这里

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,523评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,736评论 4 61
  • 3月真的是忙得马不停蹄。3月2号正式复工上班,接着就开始在紧张焦灼的氛围里准备年会。4号突然接到了拍摄任务,当天赶...
    小川叔阅读 4,671评论 3 12
  • 你拈起亲手为我做的发夹 轻轻放在我床前 临走时不忘在我额前淡淡一吻 我带着你的香吻进入了甜美的梦香 梦很美 美得很...
    伊沫儿阅读 4,075评论 1 3

友情链接更多精彩内容