当开发框架从 vue2 升级到 vue3 + vite 后 或者 项目要从 v2 升级到 v3 + vite,一些使用 require 的动态路径引入的资源会报错
这一般是因为 vue3 vite 不支持 commonjs 写法,可以安装一些插件来支持,但我个人更倾向于使用 v3 的解决方案:
这是之前的写法
1
<img alt="" :src="require(`/path/${aPath}.png')`"/>
1
let aPath = 'imgName'
处理成
v3支持的写法 👇1
<img alt="" :src="getImgUrl('imgName')"/>
1
2
3const getImgUrl = (name) => {
return new URL('/path/' + name + '.png', import.meta.url).href
}