You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vue.js遍历(imagePath,href)列表渲染时图片无法显示该如何解决?

Vue.js 动态绑定本地图片不显示问题修复方案

问题根因

写在data中的本地图片相对路径不会被webpack自动识别为需要打包的静态资源,项目打包后实际运行路径和开发时的相对路径不匹配,因此图片无法正常加载。

修复后的代码

模板部分

<div
  v-for="image in socials"
  :key="image.id"
  >
    <a :href="image.href">
      <v-avatar
        size="48"
        tile
        >
        <img
          :src="getImgUrl(image.src)" 
        />
      </v-avatar>
    </a>
</div>

脚本部分

export default {
  name: 'App',
  data() {
    return {
      socials: [
        {
          id:"1",
          src:"socials/discord.png",
          href:"https://discord.gg/link_to_discord"
        },
        {
          id:"2",
          src:"socials/telegram.png",
          href:"https://t.me//link_to_telegram"
        },
        {
          id:"3",
          src:"socials/medium.png",
          href:"https://medium.com/@link_to_medium"
        }
      ],
    };
  },
  methods:{
    getImgUrl(path) { 
      return require('@/assets/' + path);
    }
  }
};

补充优化说明:修改循环key为每条数据的id,比原写法用index作为key的性能更稳定,列表更新时不会出现不必要的节点重渲染。

内容的提问来源于stack exchange,提问作者newbnoob

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.11 21:36:02