这适用于角形材料:
columns = [];
displayedColumns:any
ngOnInit() {
this.columns = [
{ columnDef: 'id', header: 'ID', cell: (row) => `${row.id}` },
{ columnDef: 'City', header: 'City', cell: (row) => `${row.City}` }
];
}
我正尝试使列动态化,如下所示:
let temp = ['id','City'];
for (let i = 0; i < temp.length; i++) {
var tt = { columnDef: `${temp[i]}`, header: `${temp[i]}`, cell: (row) => `row.${temp[i]}`}
this.columns.push(tt)
}
现在我没有任何错误,但是所有单元格都具有以下值:
row.id row.City
row.id row.City
row.id row.City
...
那么我该如何处理以下内容的动态插补:
cell: (row) => `row.${temp[i]}`
columnDef和标题似乎很好。
我也尝试过:
`${row.`${temp[i]}`}`
但是我在嵌套的$下方有一条红色的波浪线:
[ts] Identifier expected.
谢谢
我通过以下方法解决了问题:
let ff = `row.${temp[i]}`
var tt = { columnDef: `${temp[i]}`, header: `${temp[i]}`, cell: (row) => eval(ff) }
如果有帮助,请保留此提示,但如果有更好的方法,请告知