gpt4 book ai didi

javascript - Handsontable:更新单元格元后重新渲染单元格?

转载 作者:行者123 更新时间:2023-12-03 08:51:45 27 4
gpt4 key购买 nike

每次单元格更改后,我都会将单元格的内容发送到后端,获取更新的元对象并将其应用到单元格。新的元对象为渲染器保留不同的颜色。设置元数据后,我需要重新触发单元格渲染。我发现了 afterSetCellMeta() 事件,但我找不到仅重新渲染单个单元格的方法。仅供引用,这是我正在使用的功能:

function updateCell(data) {
var i = 0;
var to = data.length;

for (i; i<to; i++) { // Go trough all changed cells, update their meta object.
var row = data[i].row;
var col = data[i].col;
var metaObject = data[i];
console.log('About to set: ', metaObject);
vm.hot.setCellMetaObject(row, col, metaObject);
// I need to update the renderer here.
}
}

有人这样做过吗?任何想法都值得赞赏,因为我没有任何想法。

最佳答案

Handsontable 不仅仅重新渲染单个单元格。任何触发更改的事件都将重新呈现整个表。这样做的目的是为了确保表是“无状态的”并且始终反射(reflect)数据所代表的内容。话虽如此,重新渲染整个表格有什么问题呢?由于 HOT 使用虚拟渲染,所以速度应该很快,但是您是否发现了问题?

如果您的意思是要更新渲染器,那么您可以在有关更新渲染器的评论中插入:

hot.updateSettings({
cells: newCellsDefinition // here you would define a new renderer for whatever cells you want to change the renderer for
});

关于javascript - Handsontable:更新单元格元后重新渲染单元格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32648157/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com