vue2.0上video视频切换(一)mp4格式的

Vue 2.0 中,如果你想要切换 video 元素的源(src),你需要确保每次切换时都提供一个不同的 src 值,以避免浏览器从缓存中加载旧的视频。

我这里使用v-if和key结合,当你使用 key 属性时,Vue 会跟踪每个节点的身份,而不仅仅是它的内容。如果 key 发生变化,Vue 会认为这是一个新的节点,因此会销毁旧的节点并创建一个新的节点。

html中的代码如下:

 <div style="width: 50%;height: 50%">
      <el-button type="primary" @click="switchVideo(1)">切换视频1</el-button>
      <el-button type="primary" @click="switchVideo(2)">切换视频2</el-button>
      <video v-if="src" :key="src" ref="video" style="width: 100%;height: 100%" controls>
        <source :src="src" :type="type">
      </video>
 </div>

 data中的属性如下:

  data() {
    return {
      src: 'https://media.w3.org/2010/05/sintel/trailer.mp4',
      type: 'video/mp4'
    }
  },

切换方法如下:

methods: {
    switchVideo(value) {
      if (value === 1) {
        this.src = 'https://video.pearvideo.com/mp4/third/20200212/cont-1651180-11487675-112807-hd.mp4';
      } else if (value === 2) {
        this.src = 'https://media.w3.org/2010/05/sintel/trailer.mp4';
      } else {
        this.src = '';
      }
      console.log('value', value, this.src);
    }
}

效果图如下,点击按钮,可以实现视频的切换

 

posted on 2024-05-07 11:16  技术高超  阅读(35)  评论(0编辑  收藏  举报