vue中动态设置source标签

项目中有个视频播放,路径通过接口返回,而且不带后缀,并不确定是什么类型的视频文件,所以要通过source标签去进行设置.

问题 :当video中存在source标签的时候,浏览器渲染之后会自动去获取地址,即便地址改变,浏览器也不会再去获取地址。
解决方法 :通过动态的插入source标签的方式,可以触发浏览器进行重排,从而去获取相应地址的文件进行播放。
代码示例:

复制代码
<template>
  <video ref="videoPlayer" controls loop></video>
 </template>
 <script>
 export default {
  mounted(){
    this.getVideo();
  },
  methods: {
    getVideo(){
      new Promise((resolve,reject)=>{
        resolve('https://www.runoob.com/try/demo_source/movie')
      }).then(res=>{
        this.$refs.videoPlayer.innerHTML=`
          <source src="${res}.ogg" type="video/ogg">
          <source src="${res}.mp4" type="video/mp4">
          <source src="${res}.webm" type="video/webm">
          您的浏览器不支持 video 标签。
        `
      })
    }
  }
 }
 </script>
相关推荐
kite01211 小时前
浏览器工作原理06 [#]渲染流程(下):HTML、CSS和JavaScript是如何变成页面的
javascript·css·html
крон1 小时前
【Auto.js例程】华为备忘录导出到其他手机
开发语言·javascript·智能手机
coding随想4 小时前
JavaScript ES6 解构:优雅提取数据的艺术
前端·javascript·es6
年老体衰按不动键盘4 小时前
快速部署和启动Vue3项目
java·javascript·vue
小小小小宇4 小时前
一个小小的柯里化函数
前端
灵感__idea4 小时前
JavaScript高级程序设计(第5版):无处不在的集合
前端·javascript·程序员
小小小小宇4 小时前
前端双Token机制无感刷新
前端
小小小小宇4 小时前
重提React闭包陷阱
前端
小小小小宇4 小时前
前端XSS和CSRF以及CSP
前端
UFIT4 小时前
NoSQL之redis哨兵
java·前端·算法