全部学科
NodeJS全栈
nodejs
Python全栈
python
小程序首页
📅 2026-05-23 5 分钟 ✍️ juanwangdev

图片与媒体资源导入

Vite 支持在 JavaScript/TypeScript 中导入静态资源文件,导入后返回资源的 URL。

导入图片

JavaScript
// 导入图片,返回 URL
import logoUrl from './assets/logo.png'

// 使用 URL
const img = document.createElement('img')
img.src = logoUrl
document.body.appendChild(img)

Vue 中使用

vue
<script setup>
import logoUrl from './assets/logo.png'
</script>

<template>
  <img :src="logoUrl" alt="logo" />
</template>

导入其他媒体

JavaScript
// 导入视频
import videoUrl from './assets/demo.mp4'

// 导入音频
import audioUrl from './assets/sound.mp3'

// 导入字体
import fontUrl from './assets/font.woff2'

内联小资源

小于 build.assetsInlineLimit(默认 4KB)的资源会被内联为 base64:

JavaScript
// 小于 4KB,返回 base64 字符串
import smallIcon from './assets/icon.png'
console.log(smallIcon) // "data:image/png;base64,..."

// 大于 4KB,返回 URL
import largeImage from './assets/banner.png'
console.log(largeImage) // "/assets/banner.xxx.png"

强制内联或 URL

JavaScript
// 强制内联
import inlineUrl from './assets/icon.png?url'

// 强制返回 URL
import rawUrl from './assets/icon.png?inline'

注意:默认配置下小于 4KB 的资源自动内联,可通过 assetsInlineLimit 修改阈值。

资源处理对比

资源大小处理方式返回值
< 4KB内联为 base64data:image/xxx;base64,...
>= 4KB输出到 assets/assets/xxx-hash.png

要点总结

  • 导入静态资源返回 URL 或 base64
  • 小于阈值自动内联为 base64
  • 支持 ?url 和 ?inline 查询参数控制
  • 支持图片、视频、音频、字体等

📝 发现内容有误?点击此处直接编辑

← 上一篇 public 目录与静态资源
下一篇 → CSS 模块化导入
想查看更多题目和详细解析?
小程序提供完整的题库、模拟考试和详细解析
马上就来

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库