angularJS ng-Grid suppressSizeToFit和suppressResize 详解

我们在使用ng-grid插件时有时候不希望最后一列字段可以拖动,这时候我们使用suppressSizeToFit 和suppressResize 禁用resize 方法:
启用调整大小
通过在网格选项中启用调整大小,为网格调整列大小调整。

如果您只希望某些列可以调整大小,请为网格启用大小调整,然后通过设置suppressResize=true 列定义来禁止调整特定列的大小。

适合大小的列
调用api.sizeColumnsToFit()以使当前可见的列适合屏幕。列将缩放(增长或缩小)以适合可用宽度。

如果您不希望特定列包含在自动调整大小中,请设置列定义suppressSizeToFit=true。例如,如果您希望第一列保持固定,但是所有其他列都要填充表格的宽度,这将非常有用。

自动调整大小的列
就像Excel一样,每个列都可以通过双击标题的右侧而不是拖动它来“自动调整大小”。执行此操作时,网格将计算出最佳宽度以适合列中单元格的内容。

通过仅考虑虚拟渲染的行,网格可以计算出最佳宽度。例如,如果您的网格有10,000行,但由于行的虚拟化而只渲染了50行,那么只有这50个将被考虑用于计算要显示的宽度。渲染的行是您可以通过水平滚动和小缓冲区在屏幕上看到的所有行(默认缓冲区大小为20)。
autoSizeColumns()查看屏幕上渲染的单元格,并根据它看到的内容计算出宽度。它无法查看由于列虚拟化而未呈现的列。因此,无法自动调整屏幕上不可见的列。

列虚拟化是网格用于通过仅渲染由于水平滚动位置而可见的列来渲染大量具有降级性能的列的技术。例如,如果水平滚动仅显示10列,则网格可以具有1000列,仅渲染10列。

要解决此问题,您可以通过设置网格属性来关闭列虚拟化suppressColumnVirtualisation=true。因此,选择是你的 - 你想要什么 - 列虚拟化工作或自动调整大小的屏幕列。

参考:https://www.ag-grid.com/javascript-grid-resizing/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值