环境:图片资源放在tomcat服务器上,vue获取到图片名后拼接路径访问
一般的拼接方式:
:src="`http://localhost:8090/ShopMallApi/img/${i.PRO_IMAGES}`"
src前面千万别漏了冒号,上面双引号里面的那符号是tab键上面那个,可别搞错了。
问题:之前一直都是用这种方式拼接路径的,也没有问题,突然之间就什么都访问不到了。检查路径发现路径变成了
http://localhost:8090/ShopMallApi/img/undefined
获取不到图片名。但是查看war包是有图片的,在浏览器地址栏手动加上图片名可以访问,在上面src处直接写死图片名也可以访问,但这些东西需要遍历出来的,肯定要动态拼接。由于图片不是vue里的静态资源,所以用require也是没有用的。简直绝望。
解决方法:
:src="getImgPath(i.PRO_IMAGES)"
写一个方法,拼接好路径之后返回路径
getImgPath(fileName){
return "http://localhost:8090/ShopMallApi/img/"+fileName;
}
这有啥区别吗?嗯我也不知道有啥区别,世界之大无奇不有,反正有时候直接拼接就是undefined,服!