添加列时如何保留自定义行高? [制表符 4.1]
How to preserve custom row heights when adding a column? [Tabulator 4.1]
我有一个制表符 table 允许用户手动调整行高和列宽。他们还能够 add/delete 行和列。
我的问题是,在调整一些行高后,您添加了一列,我猜它会重新绘制 table,因此会重置行高。我该如何解决这个问题?
这就是我添加新列的方式:
this.tabulator.addColumn({
title: "new" + this.tabulator.getColumns().length,
field: "new" + this.tabulator.getColumns().length,
width: 100,
editor: "customTextAreaEditor",
formatter: this.customTextareaFormatter,
sorter: "string", headerSort: false, editableTitle: true
});
我不会在这之后调用重绘。
您应该将这些值存储在您的主要组件中并将它们传递给单元格项。复杂性将取决于您如何允许用户自定义布局(所有单元格的宽度相同、单独等...)。
例如,您可以将所有值存储在一个数组中,然后在 *ngFor 循环中传递这些值。
您可以将行高存储在您自己的对象中,并在 rowFormatter
回调中引用这些值以在 row.getElement()
上重置高度。
我已将此问题的修复推送到 Tabulator master 分支,并将在今天晚些时候将其包含在 4.2.2 补丁版本中
我有一个制表符 table 允许用户手动调整行高和列宽。他们还能够 add/delete 行和列。
我的问题是,在调整一些行高后,您添加了一列,我猜它会重新绘制 table,因此会重置行高。我该如何解决这个问题?
这就是我添加新列的方式:
this.tabulator.addColumn({
title: "new" + this.tabulator.getColumns().length,
field: "new" + this.tabulator.getColumns().length,
width: 100,
editor: "customTextAreaEditor",
formatter: this.customTextareaFormatter,
sorter: "string", headerSort: false, editableTitle: true
});
我不会在这之后调用重绘。
您应该将这些值存储在您的主要组件中并将它们传递给单元格项。复杂性将取决于您如何允许用户自定义布局(所有单元格的宽度相同、单独等...)。
例如,您可以将所有值存储在一个数组中,然后在 *ngFor 循环中传递这些值。
您可以将行高存储在您自己的对象中,并在 rowFormatter
回调中引用这些值以在 row.getElement()
上重置高度。
我已将此问题的修复推送到 Tabulator master 分支,并将在今天晚些时候将其包含在 4.2.2 补丁版本中