当前位置: 首页 > 知识库问答 >
问题:

使用vue js 2从json文件中获取img src

罗渝
2023-03-14

我试图从json文件中获取img src属性,但没有显示图像,也没有显示替代文本。我确信这些图像在src/assets目录中找到,它们的名称是正确的。

这是组件:

<template>
  <div>
    <div class="project" :title="title" :image="image" :desc="desc">
      <div class="p-title">{{title}}</div>
      <div class="p-image">
        <img :src="image" :alt="title">
      </div>
      <div class="p-desc">{{desc}}</div>
    </div>
  </div>
</template>

<script>
export default {
  name: 'AllProjects',
  props: ["title","image","desc"]
}
</script>

以及以下观点:

<template>
  <div class="projects">
    <AllProjects
      v-for="project in projects"
      :key="project.id"
      :title="project.title"
      :image="`@/assets/${project.image}`"
      :desc="project.desc"
    />
  </div>
</template>

<script>
import AllProjects from "@/components/AllProjects.vue";
import JsonProjects from "@/projects.json";
export default {
  name: "Projects",
  components: {
    AllProjects,
  },
  data: function () {
    return {
      projects: JsonProjects,
    };
  },
};
</script>

projects.json文件:

[
  {
    "id":0,
    "title":"Blog Website",
    "image":"blog.png",
    "desc":"Description Of The Project"
  },
  {
    "id":1,
    "title":"Social Media Website",
    "image":"social-media.png",
    "desc":"Description Of The Project"
  },
  {
    "id":2,
    "title":"Online Courses Website",
    "image":"online-courses.png",
    "desc":"Description Of The Project"
  }
]

那么我的错误在哪里?

共有1个答案

喻珂
2023-03-14

问题出现在图像路径中-将“@”替换为图像的完整路径,因为它无法正确解决:

:img = "`src/assets/${project.image}`"

“@”字符是与webpack一起使用的“解决联盟”——来自webpack文档:

创建别名以更容易地导入或需要某些模块

您可以尝试将您的路径绑定到dom,如下所示:{{@/assets/}并看到它没有解析为“src”,因为它意味着模块导入,而不是在模板内使用。你可以在另一期中找到关于“解决联盟”的更多细节

 类似资料:
  • 问题内容: 我正在尝试使用PHP从以下JSON文件中获取数据。我特别想要“ temperatureMin”和“ temperatureMax”。 这可能真的很简单,但是我不知道该怎么做。我被困在file_get_contents(“ file.json”)之后该做什么。一些帮助将不胜感激! 问题答案: 使用以下命令获取JSON文件的内容: 现在使用解码JSON : 您有一个包含所有信息的关联数组。

  • 问题内容: 我如何使用javascript和jquery获取json文件的数组json 我正在尝试下一个代码,它不起作用: 这是一个名为的json文件:questions.json 我想要一个具有以下格式的数组{Biology:{Category:{cell:{question1 ....}}}} 问题答案: 是一个异步函数,因此返回该函数内部的任何内容均无济于事,因为它不在范围内或尚未收到。您可

  • 问题内容: 我正在尝试使用Jquery从本地文件中获取JSON对象(产品)的列表,并将所有对象存储在称为allItems的单个数组中。该文件与代码位于同一目录中,称为“ allItems.json”。这是我现在的做法: 基于此示例:http : //api.jquery.com/jQuery.getJSON/ 问题答案: 为了能够返回任何项目,AJAX调用需要同步运行。 转换为以下异步调用: 异步

  • 我试图使用PHP从以下JSON文件中获取数据。我特别想要“temperatureMin”和“temperatureMax”。 这可能真的很简单,但我不知道怎么做。我被困在文件获取内容(“file.json”)之后该做什么。我们将非常感谢您的帮助!

  • 我想浏览下面的json文件并将部分保存在“坐标”之后。 json文件: ] } 我在这里和这里看到过使用getJSONArray()和getJSONObject()的代码。这些信息帮助我选择了“几何体”树。 到目前为止,我的代码(test2.geojson是上面提到的json文件): 但是,这只会重新排列文件,并将第一部分附加到文件末尾。 获得以下所需输出的任何解决方案: ] } 提前感谢。干杯!

  • 问题内容: 只是因为一个简单,易于表达的陈述使我的脸上有些错误,所以我有点头疼。 我有一个名为strings.json的json文件,如下所示: 我现在想读取json文件。我发现了以下这些语句,但是不起作用: 控制台上显示的错误是这样的: 已编辑 从更改为 并得到了这个: 问题答案: 该方法(“ load”中没有“ s”)可以直接读取文件: 您正在使用方法,该方法仅用于 字符串 参数。 编辑:新消