其他分享
首页 > 其他分享> > vue使用v-for遍历本地图片不显示问题

vue使用v-for遍历本地图片不显示问题

作者:互联网

vue使用v-for遍历本地图片不显示问题

1、项目中本地有一组图片需要循环遍历展示,在使用v-for遍历之后发现无法展示图片,解决方法如下。

2、首先,正常的图片路径如下,但是想要展示不能按正常的来。需要遍历的数据正常情况如下。

   // 重点代办任务数据
      toDoListDate: [
        { id: 1, name: '即将响应超时', number: 20, imgSrc: '../common/img/group1.webp' },
        { id: 2, name: '即将完成超时', number: 21, imgSrc: '../common/img/group2.webp' },
        { id: 3, name: '响应超时', number: 20, imgSrc: '../common/img/group3.webp' },
        { id: 4, name: '完成超时', number: 23, imgSrc: '../common/img/group4.webp' },
        { id: 5, name: '客户催单', number: 25, imgSrc: '../common/img/group7.webp' },
        { id: 6, name: '重新维修', number: 27, imgSrc: '../common/img/group6.webp' },
        { id: 7, name: '暂停任务', number: 0, imgSrc: '../common/img/group5.webp' },
      ],

3、假设使用以下的方法

 <img v-for= "item in toDoListDate" :key = "item.id" :src="item.imgSrc"alt="" srcset="">
这种做法拿不到本地图片,原因不明,但是有解决方法。

4、解决方法如下,在导入路径时使用 require

    // 重点代办任务数据
      toDoListDate: [
        { id: 1, name: '即将响应超时', number: 20, imgSrc: 'img/group1.webp' },
        { id: 2, name: '即将完成超时', number: 21, imgSrc: 'img/group2.webp' },
        { id: 3, name: '响应超时', number: 20, imgSrc: 'img/group3.webp' },
        { id: 4, name: '完成超时', number: 23, imgSrc: 'img/group4.webp' },
        { id: 5, name: '客户催单', number: 25, imgSrc: 'img/group7.webp' },
        { id: 6, name: '重新维修', number: 27, imgSrc: 'img/group6.webp' },
        { id: 7, name: '暂停任务', number: 0, imgSrc: 'img/group5.webp' },
      ],
{ id: 1, name: '即将响应超时', number: 20, imgSrc: '../common/img/group1.webp' },
{ id: 1, name: '即将响应超时', number: 20, imgSrc: 'img/group1.webp' },

5、修改本地需要遍历的数据之后,我们再去需改遍历图片的代码。我们对比一下前后的代码,

<img v-for= "item in toDoListDate" :key = "item.id" :src="item.imgSrc"alt="" srcset="">
<img v-for= "item in toDoListDate" :key = "item.id" :src="require('../common/'+item.imgSrc)" alt="" srcset="">

6、注意事项

标签:遍历,name,img,number,webp,vue,本地,imgSrc,id
来源: https://blog.csdn.net/supperi/article/details/110916903