Vue中图片Src使用变量的方法

2020-06-13 06:01:43易采站长站整理

相信不少同学在开发中都有遇到图片路径需要使用变量引入的情况,如定制化背景,动态展示头像等。可能也犯过如下错误

# 错误描述

页面直接调用图片资源的方案


<img src="../../static/images/web_bg.png" />

改写成变量形式,于是如下编写


<template>
<img :src="imgSrc" />
</template>

<script>
export default {
data() {
return {
imgSrc: '../../images/web_bg.png'
}
}
}
</script>

结果运行图片加载失败。什么原因?原来是因为在打包时会被自动加上hash值从而引用失败,产生差异

# 解决办法

1. 使用 网络上的图片资源


data() {
return {
imgSrc: 'http://huoche.7234.cn/images/jb51/keng3n0qk5l.jpg'
}
}

2. 使用import导入本地资源


import imgSrc from '../../images/web_bg.png'
export default {
data() {
return {
imgSrc: imgSrc
}
}
}

3. 使用 require 导入


data() {
return {
imgSrc: require('../../images/web_bg.png')
}
}