访问对象内的数组(json)

问题描述 投票:1回答:2

我有这个json文件,我想访问该对象内的数组:

best-sellers": [
    {
      "title": "Chuteira Nike HyperVenomX Proximo II Society",
      "price": 499.90,
      "installments": {
        "number": 10,
        "value": 49.90
      },
      "high-top": true,
      "category": "society",
      "image": ""
    },
    {
      "title": "Chuteira Nike HyperVenom Phantom III Cano Alto Campo",
      "price": 899.90,
      "installments": {
        "number": 10,
        "value": 89.90
      },
      "high-top": true,
      "category": "campo",
      "image": ""
    }
}
]

这是我的组件上的代码:

   ngOnInit(): void {
      this.service
      .lista()
      .subscribe(chuteiras =>{
        this.chuteiras = chuteiras;
      })
  }

我的模板看起来像这样:

<div *ngFor="let chuteira of chuteiras.best-sellers">

但有角度并没有将它重新称为“畅销书”,这是我得到的错误:

无法读取未定义的属性“最佳”

json angular typescript
2个回答
2
投票

只需使用括号表示法,

<div *ngFor="let chuteira of chuteiras["best-sellers"]">

0
投票

好吧,这是一种方法,但角度6来自一个简单的解决方案。当我遇到这个问题时,我自己决定使用这个解决方案,但它对我不起作用,所以在搜索并完成自己的触摸后,我最终得到了这个解决方案。

1.在我使用Web API的情况下,创建接收JSON数据的函数

getTrending() { return this.http.get(https://api.themoviedb.org/3/trending/all/day?api_key= $ {} this.api_key ); }

2.在我的情况下调用函数我使用了一个服务,所以在将它导入我的组件之后我只需添加这个showPopular(): void { this.api.getTrending().subscribe((data: Array<object>) => { this.list = data['results']; console.log(this.list); }); }

正如您所看到的,数据变量只访问了我需要的信息。

© www.soinside.com 2019 - 2024. All rights reserved.