Vue中实现video的动态src

试了网上的$refs方法发现并没有用

解决方案:

通过require方法

 <div>
     <video :src='url' @click='change(2.mp4)'>
        test
     </video>
 </div>
 ​
 ​
 ​
 //js
 data() {
  return {
  url: require('@/assets/video/1.mp4')
  }
 },
 methods: {
  change(url) {
  this.url = require('@/assets/video/' + url)
  }
 }
 ​
 ​

一定要注意change()方法里的require不能直接require(url)!!!!直接完整的url参数是没有任何反应的(妈的)

要是用url拼接才能进行video的动态src

 let url = "@/assets/images/logo.png"
 require(url)    //报错
 ​
 let url = "logo.png"
 require("@/assets/images/"+url); //正确
 复制代码

很诡异,命名拼接后的路径完全一样,但是打开页面 F12 调试时,发现路径被编译成文件名+一些字符编码.png,这可能是通过 webpack 编译后,生成的路径已经不是原来的那个路径了,而通过 require("src/assets/images/logo.png") 中写绝对路径,会被原样保留并自动找到并加载 dist/public/image/logo.2d32dsa2.png 文件,但如果 require 中放入的是变量 URL,编译打包后就找不到原来的路径了,则报错!

 

vue中实现video的动态src绑定的更多相关文章

  1. vue中如何实现数据的双向绑定

    vue中如何实现数据的双向绑定 实现视图变化数据跟着变:分两步,上面get中的为第二步(即再次读取的时候会调用get方法得到之前设置的值,以此来实现动态改变) 由于直接写obj.name = this ...

  2. 微信 vue中使用video.js播放m3u8视频,解决安卓自动全屏的问题。

    最近一个项目中需要在微信中播放m3u8格式的视频,刚开始用了 vue-video-player 这个插件,在IOS手机体验良好,本以为完事了, 结果安卓手机一点播放就自动全屏,心态略崩.查了资料说是安 ...

  3. vue 中的translation操作----动态值

    在vue中,也会遇见translate的情况,这里顺带也可以带上如何查找页面中的元素的案例. 1.在加载过程中,有会遇见加载顺序先后的问题,然后查找页面元素null的情况,所以在mounted的钩子函 ...

  4. vue 中引入iframe,动态设置其src,遇到的一些小问题总结

    1.重置其样式,去掉外框以及滚动条等 <iframe id="myIframe" ref="iframe_a" :src="mySrc" ...

  5. vue中使用video插件vue-video-player

    一.安装插件 npm install vue-video-player --save 二.配置插件 在main.js中全局配置插件 import VideoPlayer from 'vue-video ...

  6. 046——VUE中组件之使用动态组件灵活设置页面布局

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. Vue中的静态资源管理(src下的assets和static文件夹的区别)

    ### 你可能注意到了我们的静态资源共有两个目录src/assets和static/,你们它们之间有怎样的区别呢? 资源打包 为了回答这个问题,我们需要了解webpack是如何处理静态资源的. 在所有 ...

  8. Vue中计算属性与class,style绑定

    var vm=new Vue({ el:'#app', data:{ a:2, }, computed:{ //这里的b是计算属性:默认getter b:{ get:function(){ retur ...

  9. vue中渲染页面,动态设置颜色

    for循环中动态设置页面的图标或者字体颜色与循环中且套循环 :style="{'color':items.color}" 案例代码: html中 <div class=&qu ...

  10. Vue中data数据,使用v-model属性绑定第三方插件(例如Jquery的日期插件)无法自动更新

    问题原因就是html结合Vue使用,但是项目又使用了第三方日期控件,这会导致日期值选择形式的更新后,而Vue管理的对应v-model字段并未自动更新,这是因为日期控件未触发Input事件,需要我们在值 ...

随机推荐

  1. PSO 算法的变体python实现

    上演化计算课的时候老师让我们实现EOPSO算法(一种精英反向的粒子群优化算法),下面是他的算法步骤: 首先我们需要知道一些基础知识: (1)基础PSO算法 (2)精英反向解 import numpy ...

  2. springboot+mybatis+vue

    https://www.cnblogs.com/wlovet/p/10980579.html

  3. 接口文档API、剖析http协议, 原生http请求函数

    http协议:超广本传输协议 特点: 短连接 请求完成后就断开 无状态  对于事务处理无记忆能力 媒体独立 客户端要指定适合的传输内容类型,如json http  是建立在tcp/ip协议之上的应用层 ...

  4. vue实现学生管理系统

    开发步骤 创建一个空文件夹,取名students-system 方式一:右键新建 方式二:命令行新建(提倡) ##windows系统 md students-system##mac/linux mkd ...

  5. 使用Microsoft Network Monitor 抓包分析文件上传

    Microsoft 自己提供了一个官方的抓包工具,可以比较方便的在windows平台抓包,并可以提供协议关键字正则.安装包位置:\\192.168.10.248\public\ghw\tools\MN ...

  6. 关于QT编译程序找不到MSVCRT.DLL和其他动态链接库的解决办法

    先上图(一大堆无法解析的外部符号): 解决办法分两个步骤: 1.系统环境变量设置,把这些dll文件所在目录加入到PATH中.比如C:\Windows\SysWOW64, C:\Windows\Syst ...

  7. C# 循环给多个连续编号的控件赋值

    C# 循环给多个连续编号的控件赋值 我们经常在 winform 界面上用很多文本框用来显示一组数据,文本框前面有Label标识.我们得到的数据也经常是一个list 或者数组的形式的.需要给这些文本框赋 ...

  8. CH573 CH582 CH579蓝牙从机(peripheral)例程讲解二(广播内容修改)

    在上一篇外设例程讲解中讲述了蓝牙从机的收发接口,这样可以快速的上手,那么接下来就讲解另一个重要设置,从机的广播. 在peripheral例程中,一直是以50ms的周期进行广播,使用手机软件扫描可以获取 ...

  9. [扫描工具]dirsearch简单使用

    [扫描工具]dirsearch简单使用 dirsearch是一个python开发的目录扫描工具.和我们平时使用的dirb.御剑之类的工具一样,就是为了扫描网站的敏感文件和目录从而找到突破口. 安装: ...

  10. Adams:一种使接触力(力矩等等)失效的方法

    1 第一步:点击"运行脚本". 2 第二步:右击选择"仿真脚本",点击"创建". 3 第三步:选择"脚本类型"为&quo ...