为 ng-repeat 汇集数组

Bring together arrays for ng-repeat

我有多个数组,想用 ng-repeat 在 table 中显示它们。我怎样才能像这样合并数组 name=[name1,name2] und type=[type1,type2] 到 data=[..] 所以我可以 ng-repeat data.name 和 data.type?

你可以这样做:

var firstArray = ['John', 'David', 'Bob'];
var secondArray = ['Mike','Sam','Carol'];
var arrayOfObject = firstArray.map(function (value, index){
   return [value, secondArray[index]]
});

o/p: [ [ 'John', 'Mike' ], [ 'David', 'Sam' ], [ 'Bob', 'Carol' ] ]

在您的组件中,您可以根据需要创建一个对象。 例如:

const names = ['name1', 'name2', 'name3'];
const types = ['type1', 'type2', 'type3'];

const data = [];

for (let i = 0; i < names.length; i++)  {
    data.push({name: names[i], type: types[i]});
}

console.log(data); // [{name: 'name1', type: 'type1'}, ... and so on]

在您看来,您可以迭代 data 来呈现 table,例如:

<table>
    <tr *ngFor="let item of data">
        <td>{{ item.name }}</td>
        <td>{{ item.type }}</td>
    </tr>
<table>