我正在尝试将此功能转换为异步/等待。但是感到困惑。有办法吗?
const csv = require('fast-csv');
const inputFileFolder = 'upload';
const readData = (inputFileName) => {
const csvData = [];
return new Promise((resolve, reject) => {
csv
.fromPath(`${inputFileFolder}/${inputFileName}`)
.on('data', (data) => {
csvData.push(data);
})
.on('end', () => {
resolve(csvData);
})
.on('error', () => {
reject(new Error('Something went wrong while reading the CSV file.'));
});
});
};
答案 0 :(得分:1)
async..await
为then
和catch
Promise方法提供语法糖,以类似同步的方式链接Promise。
由于创建了诺言但未将其链接在一起,因此使用async..await
不会改善代码。在没有链式保证的情况下,new Promise
仍需要async..await
。
答案 1 :(得分:-1)
仅在await
函数中声明async
时才能使用。
您可以使用它,然后使用正确的错误处理。
但是,如果您想使用await
,则可以使用
async function name() {
await // Your code here
};