我有一个功能打字稿,可以下载 csv 文件,但文件中的行显示 由于未定义并且不知道为什么,我认为这是我带来的数据异步的问题,但我真的不知道,
我尝试理解为什么我的数据在 console.log 和 csv 中显示未定义
const downloadCSV = async () => {
setIsLoading(true);
try {
const result = await getDataToExport();
const CSVData = getCSVColumnsData(result);
let headers = [
"Vehículo",
"Concesionario",
"Conductor",
"Fecha/Hora",
"Dirección",
"Evento",
"Descripción",
"Responsable de Revisión",
"Acción",
"Justificar",
"Responsable de Acción",
];
console.log(headers, "headers");
console.log(CSVData, "data del csv");
const options = {
fieldSeparator: ';',
quoteStrings: '"',
decimalSeparator: '.',
showLabels: true,
showTitle: true,
title: 'My Awesome CSV',
useTextFile: false,
useBom: true,
useKeysAsHeaders: false,
headers: headers
};
const csvExporter = new ExportToCsv(options);
csvExporter.generateCsv(CSVData);
} catch (error) {
console.error(error);
}
setIsLoading(false);
};```
我相信您刚刚错过了数据属性。当您通过 api 调用检索数据时,响应通常会包含 data 属性,因此更改您的代码(如下所示)应该可以解决问题:
const result = await getDataToExport();
const CSVData = getCSVColumnsData(result.data);