Массив массивов интерфейсов - PullRequest
Купить гитару в Москве
0 голосов
/ 23 декабря

Я могу сделать это:

result: MyInterface[] = [{prop1: val, prop2: val}]
result2: MyInterface[] = [{prop1: val, prop2: val}]

totalResult = [
 this.result,
 this.result2
]

это дает мне [][], вопрос в том, как объединить эту инициализацию в создание result и reusult2 внутри totalResult и сказать, что totalResult это массив или массивы MyInterface?

Ответы [ 2 ]

4 голосов
/ 23 декабря

Вы можете сделать это следующим образом

result: MyInterface[] = [{prop1: val, prop2: val}]
result2: MyInterface[] = [{prop1: val, prop2: val}]

totalResult = [
 ...this.result,
 ...this.result2
]

это добавит весь ваш элемент result и result2 в один массив

, если вы хотите простой массив, если вы хотите массивмассива просто сделайте это так

totalResult.push(this.result);
totalResult.push(this.result2);

РЕДАКТИРОВАТЬ после комментария:

, если вы хотите избежать результата и результата 2, сделайте это так

totalResult : Array<MyInterface[]> = [[{prop1: val, prop2: val}], // result
[{prop1: val, prop2: val}]]; // result2
0 голосов
/ 23 декабря

Также сохраните тип для totalResult, чтобы получить четкое изображение. Вы можете сделать это, как показано ниже. [Массив массивов ваших интерфейсов]

result: MyInterface[] = [{prop1: val, prop2: val}]
result2: MyInterface[] = [{prop1: val, prop2: val}]

totalResult: Array<MyInterface[]> = [];

this.totalResult.push(result);
this.totalResult.push(result2);
...