这是我的代码:
let promise = new Promise(( resolve, reject ) => {
let dataArray: Array<Object> = [];
d3.csvParse(csvData, ( data, error ) => {
if ( error ) reject('error occurred while parsing csv');
dataArray.push(data);
});
resolve(dataArray);
});
我正在使用d3来解析从服务器获取的csv文件。 我基本上要做的是确保在返回promise / object之前完成解析,所以我将它传递给另一个函数(此处未显示)。谢谢
答案 0 :(得分:2)
我已阅读csvParse的文档,您可以使用此
简单地更改代码dataArray=d3.csvParse(csvData);
resolve(dataArray);
您不需要将每行添加到数组中,因为csvParse将在完成解析时返回一个数组