使用reactjs发生拖动时如何读取材料表列标题数组?我使用了 onColumnDragged 函数,但只获取了 sourceIndex、destinationIndex 。我需要获取所有列标题顺序以传递给 rest 调用以保存新顺序。
问问题
437 次
2 回答
2
有一种灵活的方法可以在拖动时获取材料表的列顺序。
function App() {
const columns = [...];
const data = [...];
function handleColumnDrag() {
let columnOrder = [];
columns.forEach(column => {
columnOrder.push({
field: column.field,
columnOrder: column.tableData.columnOrder
});
});
console.log(columnOrder);
}
return (
<div className="App">
<MaterialTable
title="Tasks"
columns={columns}
data={data}
onColumnDragged={handleColumnDrag}
/>
</div>
);
}
您可能需要根据 API 调用更改columnOrder输出的格式。
演示: Codesandbox 链接
于 2019-10-11T17:18:09.050 回答
0
您可以使用属性获取对表本身的引用,tableRef
并且可以在拖动时或在任何时候访问表内部和列信息/数据等。
于 2019-10-10T04:32:13.257 回答