vue中引入图片的方法

一、图片放在/public目录下


<!-- img标签引入图片:图片名称,这种属于相对路径,在index.html的同级目录下查找此图片 -->

<img src="login-bg.png">

<!-- img标签引入图片:'/' + 图片名称,这种属于绝对路径,/表示编译后的dist文件夹 -->

<img src="/login-bg.png">

<!-- style样式引入图片时,需要用url来处理图片路径,url内部写法和img的src相同 -->

<div style="background-image: url('login-bg.png');"></div>

<div style="background-image: url('/login-bg.png');"></div>

二、图片在/src/assets目录下

此时需要使用相对路径来引用
我们先看一下@是否配置为了src目录,查看vue.config.js

configureWebpack: {
	resolve: {
        alias: {
          '@': resolve('src'),
        },
      }
}

方法1:在vue中设置一个变量来引入

data () {
	img: require('@/assets/images/img.jpg')
}

然后直接在img中使用

<img :src="img">

方法2:在css样式中引用

<div class="img-class"></div>

<style scoped>
.img-class {
	background-image: url('~@/assets/img/img.png')
}
</style>
Vue 中动态引入图片可以通过多种方式实现,具体取决于图片的来源(本地或网络)以及使用场景。以下为几种常见方法: ### 动态引入本地图片 若需动态引入本地图片,推荐使用 `require` 方式引入图片路径,这样可以确保构建工具(如 Webpack)正确处理图片资源。例如: ```javascript export default { data() { return { imgUrl: { src: require('../assets/images/index/banner.png'), }, }; }, }; ``` 在模板中可以直接使用 `imgUrl.src` 作为 `src` 属性的值: ```html <img :src="imgUrl.src" alt="Banner" /> ``` 此方法确保图片路径在构建时被正确解析,并适用于图片路径可能变化的场景[^2]。 ### 动态引入网络图片 对于网络图片,可以直接将图片 URL 存储在组件的 `data` 中,并通过 `:src` 绑定到 `<img>` 标签的 `src` 属性上。例如: ```javascript export default { name: 'SidebarLogo', data() { return { logo: 'https://wpimg.wallstcn.com/69a1c46c-eb1c-4b46-8bd4-e9e686ef5251.png', }; }, }; ``` 在模板中使用如下方式绑定图片源: ```html <img :src="logo" class="sidebar-logo" /> ``` 这种方式适用于图片来源固定且为外部 URL 的情况,能够直接通过变量控制图片显示[^3]。 ### 使用 `:style` 绑定背景图片 若需要将图片作为背景图动态引入,可以通过 `:style` 绑定样式对象,其中包含背景图片的 URL。例如: ```javascript export default { data() { return { item: { shufflingUrl: '/static/images/banner.jpg', }, }; }, }; ``` 在模板中使用如下方式绑定背景图: ```html <div class="banner-item" :style="{'background': `url(${$base.urlImage}${item.shufflingUrl})`, 'background-size': 'cover'}"></div> ``` 此方法适用于需要动态设置背景图的场景,尤其适合图片路径需要拼接或动态变化的情况[^2]。 ### 相关问题 1. Vue 中如何通过变量动态设置组件的背景图? 2. 如何在 Vue 中使用 Webpack 处理本地图片资源? 3. Vue 中动态绑定图片路径时需要注意哪些问题? 这些问题涉及 Vue图片处理的不同方面,包括动态绑定、资源处理及最佳实践,有助于深入理解 Vue图片引入机制。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值