从我的API中,我得到2个数组,一个数组具有列名,另一个数组具有与这些列匹配的数据。
要使用ag-grid,我需要将列与类的属性进行匹配。
例如:一列名为foo的类和一个具有名为foo的属性的类:
public columnDefs: Column[] =
[{ field: 'foo', headerName: 'Foo') }];
然后我需要一个类来匹配它:
export class Bar { public foo: string; }
现在,问题出在,我用一个列名称返回一个数组,用匹配数据返回另一个数组,所以我需要创建这样的东西:
x [0]是需要作为属性的列,x [1]是该属性的值
for (let index = 0; index < x[1].length; index++) {
this.rowData.push({ x[0][index]: x[1][index] });
}
这怎么办?
答案 0 :(得分:2)
您实际上需要获取x[0][index]
的值作为键名,以便可以使用ES6方法将其括在[]
中,例如
this.rowData.push({ [x[0][index]]: x[1][index] });
var x = [['someKey'],['someValue']];
var rowData = [], index = 0;
rowData.push({ [x[0][index]]: x[1][index] });
console.log(rowData);