Ag grid 是否可以在单个AG网格单元中显示多个图标,然后能够过滤每个图标上的行?
因此,我是否能够在此处显示多个图标?如果是,用户是否能够通过选择过滤器中的每个图标来过滤网格行,以显示具有每个图标(单独或作为组的一部分)的行 用户可以点击图标打开一个细节网格吗Ag grid 是否可以在单个AG网格单元中显示多个图标,然后能够过滤每个图标上的行?,ag-grid,Ag Grid,因此,我是否能够在此处显示多个图标?如果是,用户是否能够通过选择过滤器中的每个图标来过滤网格行,以显示具有每个图标(单独或作为组的一部分)的行 用户可以点击图标打开一个细节网格吗 提前感谢请查看实现您的用例的示例: 您可以使用CellRenders在一行上显示多个图标,首先必须将其提供给网格: columnDefs: [ // group cell renderer needed for expand / collapse icons { field: 'name
提前感谢请查看实现您的用例的示例: 您可以使用CellRenders在一行上显示多个图标,首先必须将其提供给网格:
columnDefs: [
// group cell renderer needed for expand / collapse icons
{
field: 'name',
minWidth: 300,
cellRenderer: 'agGroupCellRenderer',
cellRendererParams: {
innerRenderer: 'iconRenderer',
},
},
],
components: {
iconRenderer: IconCellRenderer,
},
};
以下是单元渲染器组件:
class IconCellRenderer {
init(params) {
this.params = params;
this.eGui = document.createElement('div');
this.eFilterButton = document.createElement('button');
this.eExpandButton = document.createElement('button');
this.eText = document.createElement('span');
this.eText.textContent = params.value;
this.eFilterButton.textContent = 'filter';
this.eExpandButton.textContent = 'expand';
this.eGui.appendChild(this.eText);
this.eGui.appendChild(this.eFilterButton);
this.eGui.appendChild(this.eExpandButton);
this.eFilterButton.addEventListener('click', this.filterOnClick.bind(this));
this.eExpandButton.addEventListener('click', this.expandOnClick.bind(this));
}
getGui() {
return this.eGui;
}
expandOnClick(ev) {
const isExpanded = this.params.node.expanded;
this.params.node.setExpanded(!isExpanded)
}
filterOnClick(ev) {
const value = this.params.value;
this.params.api.setFilterModel({
name: { values: [value] },
});
}
}
这里的关键是我们可以通过在节点上调用
api.setExpanded(true)
来展开一行。我们可以通过调用api.setFilterModel(filterModel)
在网格上进行过滤,非常感谢Shuheb!