vue3+vite动态引入静态资源(动态引入assets文件夹中的图片)

在Vue3中,由于require不再支持,可以使用import.meta.url结合newURL来引入图片。文章展示了如何创建一个图片数组,并通过import.meta.url获取当前模块的路径,然后拼接成完整图片路径进行使用。
摘要由CSDN通过智能技术生成
// 在vue3中如果我们通过 require 引入图片会发现报错: require is not defind,因为require是webpack的方法.

<img :src="require('@/assets/images/icon.png')" />

单个资源文件引入就计较简单了,这里就不说了.

主要讲解一下 import.meta以及具体使用:

// 当我们多个地方需要用到图片时,我们可以把这些图片搞成一个数组

const imgList = ref([
    new URL('../assets/images/icon.png', import.meta.url).href,
    new URL('../assets/images/icon2.png', import.meta.url).href,
    new URL('../assets/images/icon3.png', import.meta.url).href,
])
// 使用
<img :src="imgList[0]" alt="图片">
<img :src="imgList[1]" alt="图片">
<img :src="imgList[2]" alt="图片">

// 获取当前模块或文件的路径
import.meta.url

// 将当前模块或文件的路径和图片路径拼接成一个完成的路径
new URL('../assets/images/icon.png', import.meta.url).href 

import.meta 在阮一峰的文章中有讲到

29. 最新提案 - import.meta - 《阮一峰 ECMAScript 6 (ES6) 标准入门教程 第三版》 - 书栈网 · BookStack

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

开发那点事儿~

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

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

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

打赏作者

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

抵扣说明:

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

余额充值