Vue3 动态引入图片: require is not defined报错

问题:在 Vue3 项目中,使用 require 引入图片,报错 require is not defined

原因: Vue3 使用的是 vite,而 require 是 Webpack 的方法。

官网说明

解决代码:

javascript 复制代码
<template>
	<div v-for="(item, index) in list" class="list-item">
		<img :src="getAssetURL(item)" alt=""> 
	</div>
</template>

<script setup>
  import { ref } from 'vue'
  const list = ref([
    {
      sex: '男',
      name: '张小白',
      type: '成人'
    },
    {
      sex: '女',
      name: '张小白',
      type: '成人'
    }
  ])

  const getAssetURL = (image) => {
    // 参数一: 相对路径   参数二: 当前路径的URL
    return new URL(`/src/assets/头像${image.type}${image.sex}.png`, import.meta.url).href
  }
</script>
相关推荐
Elastic 中国社区官方博客19 小时前
使用重新设计的 AutoOps 更快地进行 Elasticsearch 问题排查
大数据·运维·前端·人工智能·elasticsearch·搜索引擎·全文检索
无巧不成书021819 小时前
Vue+Vue-CLI全平台零基础搭建教程
前端·javascript·vue.js·vue·前端开发·vue-cli·前端环境搭建
何时梦醒20 小时前
⚛️ React 19 组件化实战 —— 从零搭建 Todo List 并吃透组件通信
前端·人工智能·react.js
bonechips20 小时前
React 组件通信:一套 TodoList 讲清 props 与回调
前端·react.js
渣波20 小时前
别把 TodoList 写成面条代码!一文吃透 React 组件通信与状态驱动的核心内功
前端
2601_9647028920 小时前
Claude Opus 5 API 开发实战:对话、文本生成与结构化输出
java·服务器·前端
cellurw20 小时前
20260724 六组件编译收尾与全局构建验证
前端
用户29307509766920 小时前
用React 完成Todos 的 组件应用:深入理解单向数据流与组件通信
前端
玉宇夕落20 小时前
React 父子组件通信 Todo List 看透单向数据流与不可变数据
前端