Vue里面如果用代码控制img,src必须用require(路径),而不能直接使用src=路径的方式

HTML的img标签的src是有两种, 绝对路径/相对路径, 相对路径可以转成绝对路径
比如: http(s)😕/www.baidu.com/test.jpg
前面http(s)😕/www.baidu.com 指明那一台Web服务器, /test.jpg是相对于服务器所设置的根目录, 比如\www\picture, 所以这里的寻址是相对于web服务器所设置的根目录的
那么问题是为什么到了Vue里面, 为什么img标签可以写相对于源码的目录, 通过变量传递字符串就不行呢?
现在Vue项目一般都会经过Webpack之类的打包工具, 在解析template里面, 解析img标签的时候, 如果src是静态字符串, 如果不是http开头的, 那么就是相对于源码目录的图片
那么如果把src设置为一个变量, 那么template里解析img标签的时候并不知道src的值, 是不是http开头的, 需要运行时才知道, 所以需要你告诉构建工具, 项目使用了这个图片资源, 然后返回相对于web服务器根目录的路径(dist目录也行)

require(‘xx.jpg’)的作用就是把图片复制到dist目录下的某个目录(根据你的配置), 然后返回相对web服务器根目录的相对路径字符串, 这个是构建时就返回了

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ponGISer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值