【发布时间】:2021-07-26 14:02:00
【问题描述】:
我想知道在使用 domLayout='autoHeight' 时是否有一种方法可以使 ag-grid 具有最小高度?当没有行时,过滤框会被剪掉,看起来不太好,因为网格的高度太短了。
任何人都遇到过这个并且能够得到一个最小高度,所以当有少量记录时网格不会那么短?
谢谢
【问题讨论】:
标签: ag-grid-angular
我想知道在使用 domLayout='autoHeight' 时是否有一种方法可以使 ag-grid 具有最小高度?当没有行时,过滤框会被剪掉,看起来不太好,因为网格的高度太短了。
任何人都遇到过这个并且能够得到一个最小高度,所以当有少量记录时网格不会那么短?
谢谢
【问题讨论】:
标签: ag-grid-angular
据我所知,ag-grid 中没有这样的功能。
简单但肮脏的解决方案: 如果行高是固定的,您可以检查行数并根据它们选择“正常”或“自动高度”布局+为“正常”布局设置网格高度(因为它是必需的)
作为更智能的解决方案(对于具有不同高度的行等): 网格初始化后,使用 smth 计算实际网格的高度:
let gridHeight = 0;
this.gridApi.forEachNode(node => {
const nodeHeight = node.rowHeight;
gridHeight += nodeHeight;
});
然后,将gridHeigh 与您的minHeight 进行比较,并设置正确的布局并将网格高度设置为minHeight(仅适用于“正常”布局)
注意事项:
normal 布局,所以可能有一个更好的解决方案,我没有知道;onGridReady、onRowDataChanged、onGridSizeChanged 等一堆 ag-grid 钩子上重新计算正确的布局
【讨论】: