vue中动态设置img的src属性

我们知道在使用img标签时,直接在img标签中通过src属性设置图片的路径,即可表示对图片的引用。

<img src="../assets/drag_1.jpg">

如上表示的是 引用的是assets文件下的1.jpg图片。这个对于所有的前端开发者来说,都是没有什么问题的。今天在开发vue项目中需要给img动态的设置src属性,这时通过js代码设置的src属性一直没有生效,导致图片显示不了。

比如现在有10张照片,需要根据业务的不同场景,对显示的图片进行变换。如果我们在每次进行图片的更改时,直接读取img的路径的,然后根据对变量进行赋值。

<template>
    <img :src="imgSrc">
</template>
<script>
export default {
    data(){
        imgSrc:''
    }
    mothods: {
        getImageSrc(){
            this.imgSrc = '../assets/drag_2.jpg'
        }
    }
}

</script>

 在使用webpack进行打包时,需要使用import将图片引入到自己需要使用的.vue文件中

import drag1 from '../assets/drag_1.jpg'

然后在data()中进行使用

data(){
    imgSrc: drag1

}

这样我们对img进行动态设置src属性时,才会生效。

我们再来看下webpack对图片的打包处理

当我们在对样式进行处理时,使用url引入的图片路径,将会被打包进img文件夹下。

打包完成后,我们会在项目的static文件下的img文件下看到

这个icon_right.f13cff3.png就是刚才的的icon_right.png 图片。

当我们在使用webpack和webpack-dev-server开发的vue项目 中时,如果需要动态的设置img的src属性的话,需要将图片使用import的方式引入进来,这样才会生效。

  • 7
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值