Web前端开发:关于vue中导入数组图片不能显示的解决方案 - Web前端
作者:98wpeu发布时间:2026-09-16分类:网页前端技术浏览:7
导读:关于vue,相信前端童鞋都会了解一些,现在被很多公司应用,它越来越成熟了,各种关联框架也随之兴起;并且相对于react,学习成本没那么高,但是要学好,需要不少的努力和实践。众所周知...

关于vue,相信前端童鞋都会了解一些,现在被很多公司应用,它越来越成熟了,各种关联框架也随之兴起;并且相对于react,学习成本没那么高,但是要学好,需要不少的努力和实践。众所周知,VUE里有很多坑,今天就来聊聊个话题:Web前端开发里关于Vue种导入数组图片不能显示的解决方案。
我们这里来举例来分析,会更清晰。先看段我弄的一个DemO代码:
自定义数组代码:
data(){
return {
items:[
{id:'1',count:'1',name:'苹果',PRice:'5',img:'../assets/img/1.png'},
{id:'2',count:'1',name:'李子',price:'6',img:'../assets/img/2.png'},
{id:'3',count:'1',name:'西红柿',price:'7',img:'../assets/img/3.png'},
{id:'4',count:'1',name:'葡萄',price:'8',img:'../assets/img/4.png'}
],
active:true
}
},模板代码:
<template>
<div class="storedatebox">
<h2 class="hfon">VUE表模糊搜索和价格列表调整DEMO</h2>
<div class="store-search"><input type="text" name="" id="" placeholder="请输入产品名称"></div>
<table cellspacing="0" cellpadding="0" border="0" width="100%" class="tablelist">
<thead>
<tr>
<th>序号</th>
<th>产品</th>
<th>图片</th>
<th>数量</th>
<th>单价</th>
<th>总价</th>
<th>选择</th>
</tr>
</thead>
<tbody>
<tr v-for='(item,index) in items' :key="index">
<td>{{item.id}}</td>
<td>{{item.name}}</td>
<td><img src="item.img" alt=""></td>
<td>
<input :disabled='item.count == 0' type="button" value="-" @click='item.count--'>
<span>{{item.count}}</span>
<input type="button" value="+" @click='item.count++'>
</td>
<td>{{item.price | FORMatMoney(2)}}元</td>
<td>{{item.price * item.count | formatMoney(3)}}元</td>
<td><input type="checkbox" v-model="active"></td>
</tr>
</tbody>
</TABle>
<p class="data-info">{{totalCount}}件商品总计:{{totalPrice | FormatMoney(3)}}元</p>
</div>
</template>我们这里有个表格需要遍历数据,发现图片显示不出来,如下图

一般我们查找图片不显示的原因,会从图片的路径问题去排查,发现路径都是对的,也是不行。后续查了下官方API,需要对于数组内里的img_url加个reqUIre处理。代码如下:
data(){
return {
items:[
{id:'1',count:'1',name:'苹果',price:'5',img:require('../assets/img/1.png')},
{id:'2',count:'1',name:'李子',price:'6',img:require('../assets/img/2.png')},
{id:'3',count:'1',name:'西红柿',price:'7',img:require('../assets/img/3.png')},
{id:'4',count:'1',name:'葡萄',price:'8',img:require('../assets/img/4.png')}
],
active:true
}
},运行走起,发现还是没显示,此时此刻,有些童鞋就懵了。其实这些问题排除后,我们应该再去考虑遍历的时候,获取图的url方式是否正确,发现代码是这样的:
<img src="item.img" alt="">
其实这个是不对的,对于获取属性的时候,vue官方说明需要使用绑定元素属性的方法v-bind,所以我们需要改下这里的代码:
<img :src="item.img" alt="">
前面的分号就是v-bind的缩写,我们在运行下:

问题终于解决了。那么我再问问大家,我把图片路径地址写成带有域名或者IP的,结果会如何。
比如:
{id:'1',count:'1',name:'苹果',price:'5',img:require('https://www.jiangweishan.com/zb_Users/theme/Nobird_CMS_3/style/images/nlogo.png')},运行下结果:

发现已经报错了,提示项目中找不到此图,要求我们去install;因此我们要避免这种方式要去调用图片,还是保存到项目文件夹中,再采用最上面的方法调用。
总结
关于vue中图片不能显示的问题,基本就这些,如您有问题可以加QQ群进行咨询。vue还有很多坑,慢慢踩,不断进步。
相关推荐
- 汇总IOS下奇葩BUG以及iframe嵌套页面带来的一些困扰 - Web前端
- 在JavaScript中,将存储布尔值的变量转换为“0”或“1”的常用方法 - Web前端
- 这些CSS3动画库,您是否都了解和应用过? - Web前端
- 分享Visual Studio Code的开发过程中常用的插件 - Web前端
- .vue文件里的export default解释 - Web前端
- 回顾JS规范中的相等、严格相等、零值相等以及同值相等 - Web前端
- 对于vuejs里import引用模板路径“@”的解释 - Web前端
- 聊聊JS里区间取随机数的方法:Math.random()和Math.floor() - Web前端
- 谷歌浏览器声明:2020年12月在Chrome中告别Flash - Web前端
- 学习下JS里如何实现类型转换:隐性转换和显性转换 - Web前端
- 网页前端技术排行
-
- 1[Web前端]用javascript实现默认图片替代未显示的图片 - Web前端
- 2分析Iconfont-阿里巴巴矢量常用图标库 - Web前端
- 3jQuery实例教程:制作网页中可折叠的面板 - Web前端
- 4【第六章】Foundation之按钮和下拉功能 - Web前端
- 5基于jquery的滚动条滚动固定div(附演示下载) - Web前端
- 6jQuery编写widget的一些技巧分享 - Web前端
- 7分享精心挑选的12款优秀jQuery Ajax分页插件和教程 - Web前端
- 8jQuery实现鼠标移到元素上动态提示消息框效果 - Web前端
- 9在Mac/PC上远程调试iPhone/iPad上的网页 - Web前端
- 最近发表
-
- WordPress随机显示特色图片插件:Random Post Thumbnails
- KeePass实现Chrome浏览器自动填充密码方法一
- LNMP一键包nginx 301强制跳转到https教程
- KeePass实现Chrome浏览器自动填充密码方法二
- #建站# 免费的VPS管理软件Xshell8/Xftp8中文版下载
- 使用Xshell 8连接VPS教程_电脑登录vps的方法
- WordPress评论界面添加烟花????效果
- 不同浏览器书签同步方案:坚果云+Floccus_详细使用教程
- iOS端KeePassXC客户端APP:Strongbox Password Safe
- 给WordPress评论中的Gravatar头像图片添加ALT属性


