Vue3 + Vite + ts引入本地图片

Vue3 + Vite + ts引入本地图片

单张图片导入

单个图片导入,不过多阐述,通过 import 导入需要使用的图片。

javascript 复制代码
import imgName from '@/assets/img/imgName.png'

多张图片导入

javascript 复制代码
new URL() + import.meta.url

import.meta.url 是一个 ESM 的原生功能,会暴露当前模块的 URL。将它与原生的 URL 构造器 组合使用。

在一个 JavaScript 模块中,通过相对路径我们就能得到一个被完整解析的静态资源 URL:(相对路径一定要写正确,当前引入图片的文件,相对图片的位置)

TypeScript 复制代码
const getWeatherIcon = (iconId) => {
  return new URL(`/assets/images/weather/W${iconId}@3x.png`, import.meta.url).href;
}

通过传入所需图片的关键字符拿到对应图片

TypeScript 复制代码
getWeatherIcon(imagecode)

背景图片引入

如果是背景图片引入的方式(一定要使用相对路径)

相关推荐
majingming1234 小时前
FUNCTION
java·前端·javascript
A_nanda5 小时前
Vue项目升级
前端·vue3·vue2
SuperEugene5 小时前
Axios 接口请求规范实战:请求参数 / 响应处理 / 异常兜底,避坑中后台 API 调用混乱|API 与异步请求规范篇
开发语言·前端·javascript·vue.js·前端框架·axios
abigale036 小时前
【浏览器 API / 网络请求 / 文件处理】前端文件上传全流程:从基础上传到断点续传
前端·typescript·文件上传·vue cli
Setsuna_F_Seiei6 小时前
AI 对话应用之页面滚动交互的实现
前端·javascript·ai编程
新缸中之脑6 小时前
追踪来自Agent的Web 流量
前端
wefly20177 小时前
从使用到原理,深度解析m3u8live.cn—— 基于 HLS.js 的 M3U8 在线播放器实现
java·开发语言·前端·javascript·ecmascript·php·m3u8
英俊潇洒美少年7 小时前
vue如何实现react useDeferredvalue和useTransition的效果
前端·vue.js·react.js
英俊潇洒美少年8 小时前
ref 底层到底是怎么变成响应式的?
vue.js
kyriewen118 小时前
给浏览器画个圈:CSS contain 如何让页面从“卡成PPT”变“丝滑如德芙”
开发语言·前端·javascript·css·chrome·typescript·ecmascript