Вы можете написать свой собственный обратный вызов exportCsv fn, но затем вы отвечаете за создание CSV-данных для экспорта также.
Возможно, вы найдете следующее полезным. Для экспорта данных вы можете использовать ту же библиотеку, что и в компоненте MaterialTable. Во-первых, не забудьте установить библиотеку:
npm install --save filefy
и импортировать библиотеку
const _filefy = require("filefy");
Внутри функционального компонента определите fn для экспорта данных в формат CSV:
const exportCsv = (allColumns, allData) => {
const columns = allColumns.filter(columnDef => columnDef["export"] !== false);
const exportedData = allData.map(rowData => columns.map(columnDef => rowData[columnDef.field]));
new _filefy.CsvBuilder('filename_' + moment().format('YYYY-MM-DDTHHmmss'))
.setDelimeter(';')
.setColumns(columns.map(columnDef => columnDef.title))
.addRows(exportedData)
.exportFile();
}
Внутри MaterialTable подключите экспорт CSV
<MaterialTable
...
options={
{
...
exportButton: true,
exportCsv,
}
}