vue assets动态引入图片解决打包后图片路径错误不显示的问题

通用:适用于处理单个链接的资源文件

复制代码
import homeIcon from '@/assets/images/home/icon.png'
<img :src="homeIcon" />

webpack 构建的项目

这里我们先假设:

静态文件目录:src/assets/images/

我们的目标静态文件在 src/assets/images/home/icon.png

复制代码
<img :src="require('@/assets/images/home/icon.png')" />

vite 构建的项目

尝试过require动态引入, 发现报错:require is not defind,这是因为 require 是属于 Webpack 的方法

复制代码
<img :src="getAssetsFile('/home/icon.png')" />

const getAssetsFile = (fileUrl) => {
   return new URL(`../assets/images/${fileUrl}`, import.meta.url).href
}

静态资源处理 | Vite 官方中文文档

参考官网

相关推荐
冬阳春晖1 分钟前
web animation API 锋利的css动画控制器 (更新中)
前端·javascript·css
工业互联网专业1 小时前
基于springboot+vue的房屋租赁管理系统
java·vue.js·spring boot·毕业设计·源码·课程设计·房屋租赁管理系统
Python私教1 小时前
使用FastAPI和React以及MongoDB构建全栈Web应用05 FastAPI快速入门
前端·react.js·fastapi
浪裡遊1 小时前
Typescript中的对象类型
开发语言·前端·javascript·vue.js·typescript·ecmascript
杨-羊羊羊1 小时前
什么是深拷贝什么是浅拷贝,两者区别
开发语言·前端·javascript
发呆的薇薇°1 小时前
在vue里,使用dayjs格式化时间并实现日期时间的实时更新
前端·javascript·vue.js
m0_627827521 小时前
vue3中 input 中放大镜在后面
javascript·vue.js·elementui
七冬与小糖2 小时前
【本地搭建npm私服】使用Verdaccio
前端·npm·node.js
lally.2 小时前
2025御网杯wp(web,misc,crypto)
前端·ctf
海绵不是宝宝8172 小时前
React+Springboot项目部署ESC服务器
前端·react.js·前端框架