vue3中导入图片使用@/.....失效,使用import有效

先看下面的代码:

// script
let userAvatar='@/assets/user.png'

// tempalte
<img  :src="userAvatar" >

在写一个项目时,我就是直接这样写的,但是发现图片加载不出来!

用F12检查之后发现,src的路径如下所示:

emmm,这。。。。在vue中,我们为了简化路径,在vite.config.ts配置了用@代替src,在解析之后,@应该要变回src,但这里没有,还是@,所以图片路径没有正确解析出来,导致图片加载不出来。

 resolve: {
    alias: {
      '@': path.resolve(__dirname, 'src') 
    }
  }

出现上述问题的原因可能是:userAvatar是一个字符串变量,Vue在解析这个路径时不会自动将@/转换成正确的相对路径.

解决办法:使用import导入

import userAvatar from '@/assets/user.png';

图片路径正确显示,图片加载出来了。

如果本文对你有帮助,希望能得到你的点赞或收藏或关注,这是对我最好的鼓励;

如你有问题或疑惑,欢迎在评论区写下,必将努力解答;

如本文有误区,希望你不吝赐教,让我们共勉!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值