另一个数组中的数组

时间:2019-02-18 11:09:25

标签: arrays angular typescript rest api

我有一个数组对象(由API组成),eatch对象包含一个数组,但我无法访问子数组:

结构:

  

结算[日期,总价格,{productList [product1,product2]},...,...,{[...,...,...]},....,... 。,...,   {[...,...,...,]}]

我的模特是:

export  class Billing {
  private _productsList: Array<InvoiceLine>;
  private _Date: Date;
  private _totalPrice: number;
}

然后我初始化了一个数组:

public AllBilling: Billing[] = []; 

然后,当我尝试从Blling Array中获取数据时,它就会起作用。

for ( i = 0; i < this.AllBilling.length; i++){
     console.log(this.AllBilling);
}

但是当我尝试从数组中获取productsList时,它将无法正常工作。

for ( i = 0; i < this.Belling.length; i++){
     console.log(this.Belling[i]);

        for ( j = 0; j < this.AllBilling[i].productsList.length; i++){
          console.log(this.AllBilling[i].productsList[j]); }
}

它给了我以下错误:

  

ERROR TypeError:无法读取未定义的属性'length'

女巫参考productsList.length

enter image description here

1 个答案:

答案 0 :(得分:2)

您在此代码中有几个错误

  1. 您需要重复的是AllBilling,而不是BellingBelling引用一个类,而不是一个值

  2. _productsList不是productsList

  3. 如果要访问productsList,应该是 public,而不是private

这就是为什么它不起作用。 希望有帮助