我正在尝试将
autosizecolumns
功能与 AG-Grid 和 Angular 框架一起应用。当函数执行时,列将默认采用内容的宽度。因此,我为该列设置了 maxWidth
,以防我的内容很长。问题是列的宽度将受到限制,它无法调整大小,无法将列拉动或展开超过 maxWidth,以防我想查看单元格中的所有内容。
这里是我的例子,我已经为年龄列设置了maxWidth,并且它的大小不能调整超过maxWidth
ejbyne的这个解决方法帮助我在反应中实现了这一目标。
https://github.com/ag-grid/ag-grid/issues/1614#issuecomment-1706809778
const autoSizeColumns = () => {
const allColumnIds: string[] = [];
gridRef.current?.columnApi?.getColumns()?.forEach((column) => {
allColumnIds.push(column.getId());
});
gridRef.current?.columnApi?.autoSizeColumns(allColumnIds, false);
gridRef.current?.columnApi.getColumns()?.forEach((column) => {
gridRef.current?.columnApi.autoSizeColumn(column.getId());
if (column.getActualWidth() > MAX_COLUMN_WIDTH) {
column.setActualWidth(MAX_COLUMN_WIDTH);
}
});
};