从使用承诺进行验证的readStream读取csv

时间:2019-02-01 10:50:54

标签: javascript node.js csv cfreadstream

我正在尝试读取一个csv文件,需要使用Promise验证其行。但是看起来它甚至没有进入Promise,也没有记录控制台内的Promise。

  let rowCount=0;
  let parser=csv.fromStream(stream, parseOptions)
    .on("data", function(row){
        if(rowCount==0){
            csvData.headers=row;
        }else{
            parser.pause();
            csvData.row=row;
            me.validateRow(csvData).then(function(validationStatus){
                csvData.status=validationStatus;
                parser.resume();
            }).catch(function(error){
                console.log('Error :', error.toString());
                reject(error.toString());
            });
            rowCount++;

        }

    }).on("end", function(){
        console.log( csvData);
        resolve(csvData);
    })
    .on("error", function (error) {
        console.log("ERROR :", error.toString());
        reject("Something went wrong");
    });

  Helper.prototype.validateRow=function(){
     return new Promise(function(resolve, reject){
        console.log('Validate Row here');
        resolve(true);
     });
  };

我也使用parser.pause()和parser.resume()使其等待但不起作用。

0 个答案:

没有答案