首页 > 解决方案 > 我需要一个 json 文件的属性,但我的代码将它们全部提取出来

问题描述

我有这个问题我必须使用 json 文件的一部分,因为当应用程序调用图像时,它依赖于 json 文件中存在的 ID

es。

<img (click) = "seeHeroDetails (hero)" mat-card-image src = "assets / images / heroes / {{hero.id}}. jpg">

但只有页面调用我所有的 json 而不仅仅是他感兴趣的部分,因此不调用图像,因为他不知道要采用哪个 id,所以我如何“剪切”我做的其余 json不需要?

这是json

[
{
id: "1",
name: "Spiderman",
alter_ego: "Peter Parker",
likes: "106",
default: true,
},
{
id: "2",
name: "Superman",
alter_ego: "Clark Kent",
likes: "27",
default: true,
},
{
id: "3",
name: "Batman",
alter_ego: "Bruce Wayne",
likes: "98",
default: true,
},
{
id: "4",
name: "Wonder woman",
alter_ego: "Diana Prince",
likes: "78",
default: true,
},
{
id: "5",
name: "Iron man",
alter_ego: "Tony Stark",
likes: "65",
default: true,
},

我需要这个

[
{
id: "1",
name: "Spiderman",
alter_ego: "Peter Parker",
likes: "106",
default: true,
},
]

当我调用图像时。

感谢所有的答案。

标签: json

解决方案


我不完全明白你的意思。

但是如果你有id,那么你需要做的就是在 json 数组上运行一个循环并匹配 id 字段。

这里,

const heroes = [{
        id: "1",
        name: "Spiderman",
        alter_ego: "Peter Parker",
        likes: "106",
        default: true,
    },
    {
        id: "2",
        name: "Superman",
        alter_ego: "Clark Kent",
        likes: "27",
        default: true,
    },
    {
        id: "3",
        name: "Batman",
        alter_ego: "Bruce Wayne",
        likes: "98",
        default: true,
    },
    {
        id: "4",
        name: "Wonder woman",
        alter_ego: "Diana Prince",
        likes: "78",
        default: true,
    },
    {
        id: "5",
        name: "Iron man",
        alter_ego: "Tony Stark",
        likes: "65",
        default: true,
    }
];

function seeHeroDetails(id) {
    return heroes.find(hero => hero.id == id);
}

console.log(seeHeroDetails(1));


推荐阅读