我面临的问题是不知道如何获取已更改到电子表格中的数据。我有一个我想完成的用例,即当任何人更改列中的值时,假设有多个列,其中之一是命名值,现在如果仅更改该列,那么我想要更改数据(新数据)和我一起。
我已经尝试过 onChange 方法,但似乎我没有运气解决它。任何人都可以帮助我并引导我完成它,即使是 kendoReact 电子表格的基本演示也适合我,我将不胜感激。
const handleChange = React.useCallback(
(e) => {
const sheetValues = e.range.values();
const activeCellIndex =
e.range._sheet._editSelection._activeCell.bottomRight.col;
const activeValueIndex =
e.range._sheet._editSelection._activeCell.bottomRight.row;
const newData = spreadsheetData.map((sheet) => {
return {
...sheet,
rows: sheet.rows.map((row, rowIndex) => {
if (row.cells && row.cells.length > 0) {
const updatedCells = row.cells.map((cell, colIndex) => {
if (
colIndex === activeCellIndex &&
rowIndex === activeValueIndex
) {
const newValue = sheetValues[0][0] || "";
return {
...cell,
value: newValue,
};
}
return cell;
});
return {
...row,
cells: updatedCells,
};
}
return row;
}),
};
});
setSpreadsheetData(newData);
},
[events, spreadsheetData]
);
它改变了您工作或编辑的确切位置。就我而言,结构太复杂,我无法处理,所以我解决了这个问题并使其工作。因此,请随意查看它,如果它以后对任何人有帮助,我会很高兴。谢谢