我有一个数组对象(由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
答案 0 :(得分:2)
您在此代码中有几个错误
您需要重复的是AllBilling
,而不是Belling
,
Belling
引用一个类,而不是一个值
_productsList
不是productsList
如果要访问productsList
,应该是
public
,而不是private
这就是为什么它不起作用。 希望有帮助