我将列def组合在一起,一些列是静态的,而少数列则来自基于用户的后端。我有以下代码将它们放在一起:
this.columnDefMetadataService.getMetadata().subscribe(data => {
data.forEach(col => {
this.columnDefs.push({headerName: col.displayName, field: col.name,
cellRenderer: function (params) {
if (params.data) {
for (const ref of params.data.references) {
if (ref.name === col.name) {
return ref.value;
}
}
return '';
} else {
return '';
}
}});
});
this.gridOptions.api.setColumnDefs(this.columnDefs);
一切正常,但是,当我在这些动态列上使用“复制”上下文菜单时,我什么也没选择。