npm csv-parse 不读取所有行

Vot*_*ike 2 javascript csv filereader node-csv-parse

我正在尝试使用csv-parse读取 CSV ,但最后一行未被读取。我的代码:

const handleFiles = event => {
  const f = event.target.files[0];
  const parser = CsvParse({delimiter: ',', columns: true});
  parser.on('readable', function(){
    console.log('readable');
    let record;
    // eslint-disable-next-line no-cond-assign
    while (record = parser.read()) {
      console.log(record);
    }
  });
  const reader = new FileReader();
  reader.onload = (function() {
    return function(e) {
      console.log('Writing');
      parser.write(e.target.result);
    };
  })(f);

  reader.readAsText(f);
};
Run Code Online (Sandbox Code Playgroud)

输入:

Letter,Number
A,1
B,2
C,3
Run Code Online (Sandbox Code Playgroud)

输出:

Writing
readable
{Letter: "A", Number: "1"}
readable
{Letter: "B", Number: "2"}
Run Code Online (Sandbox Code Playgroud)

为什么C3不被读取?
为什么“可读”被打印两次?我有一种感觉,我没有正确理解 csv-parse。

谢谢

Vot*_*ike 6

添加后最后一行被正确读取后parser.end();我就失踪了。parser.write(e.target.result);