Прежде всего, указанный вами массив неверен.Я предполагаю, что это будет так:
vegetables = [[
{name: 'Carrot', type: 'vegetable'},
{name: 'Onion', type: 'vegetable'},
{name: 'Potato', type: 'vegetable'},
{name: 'Capsicum', type: 'vegetable'}],
[
{name: 'Carrotas', type: 'vegetable'},
{name: 'Onionas', type: 'vegetable'},
{name: 'Potatoas', type: 'vegetable'},
{name: 'Capsicumas', type: 'vegetable'}]]
Если я правильно понял, либо вам придется написать с *ngIf
для индексов (например, проверить, является ли индекс нечетным или четным), либо уменьшитьони должны быть едины.Например:
const vegetablesReduced = vegetables.reduce((r, x) => [...r, ...x], []);
Это создаст массив как:
vegetablesReduced = [
{name: 'Carrot', type: 'vegetable'},
...
{name: 'Carrotas', type: 'vegetable'},
...
];
РЕДАКТИРОВАТЬ: Ах .. Я только вижу, что ваша проблема лежит только в определении массива.То, как вы создали массив, является ложным, поскольку вы создаете только первое, а второе игнорируется (javascript ...).Попробуйте изменить массив, как я указал, и посмотрите, работает ли он.
EDIT2: это должен быть 2D-массив, в то время как у вас есть только 1D (и тоже с ошибкой, поскольку одномерные массивы нельзя разбить на несколько массивов)Чего вам не хватает, так это только обернуть все это в другой массив, и это сработает.