Массив в другом массиве - PullRequest
0 голосов
/ 18 февраля 2019

У меня есть объект массива (форма API), объект eatch содержит массив, и я не могу получить доступ к подмассиву:

Структура:

Биллинг[date, totalPrice, {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]); }
}

Это дает мне следующую ошибку:

ОШИБКА TypeError: Невозможно прочитать свойство 'length' из неопределенного

с указанием productsList.length

введите описание изображения здесь

1 Ответ

0 голосов
/ 18 февраля 2019

В этом коде есть несколько ошибок

  1. вам нужно повторить: AllBilling, а не Belling, Belling относится к классу, а не к значению

  2. _productsList не productsList

  3. Если вы хотите получить доступ к productsList, он должен быть public, а не private

Вот почему он не работал.Надеюсь, что эта помощь

...