TypeError:无法读取Object.eval

时间:2019-03-07 17:39:45

标签: angular typescript rxjs angular7 ionic4

.html

  <div *ngFor="let p of (products$ | async)?.result.categories.ShoppingCart;">
        {{p.price}}
   </div>

.ts

this.products$ = this.bikeShopService.get();

邮递员

{
    "result": [
        {
            "categories": [
                {
                    "ShoppingCart": [
                        {
                            "id": 1,
                            "name": "Golf Clubs",
                            "price": "125",

}]}]}
  

错误TypeError:无法读取未定义的属性“ ShoppingCart”       在Object.eval [作为updateDirectives](BikeShopListPage.html:22)       在Object.debugUpdateDirectives [作为updateDirectives](core.js:23813)       在checkAndUpdateView(core.js:23209)       在callViewAction(core.js:23450)       在execComponentViewsAction(core.js:23392)       在checkAndUpdateView(core.js:23215)       在callViewAction(core.js:23450)       在execEmbeddedViewsAction(core.js:23413)       在checkAndUpdateView(core.js:23210)       在callViewAction(core.js:23450)

问::您能告诉我如何访问上述数据吗?

2 个答案:

答案 0 :(得分:1)

应为.result[0]?.categories[0]?.ShoppingCart

结果类别是数组而不是对象

答案 1 :(得分:0)

您的项目是数组,您可能要考虑取出数组部分[],或者如果需要数组/列表,请为数组中的对象提供UID。

ngFor可以在HTML或.map()函数中使用