Это мой код:
class Counter extends Readable {
constructor() {
super();
}
_read () {
readStream.on('data', (data) => {
console.log(JSON.stringify(data));
this.push(JSON.stringify(data));
});
readStream.on('end', () => {
this.push(null);
});
}
}
Я получаю эту ошибку, и обработка также становится очень медленной.
(node:18488) MaxListenersExceededWarning: Possible EventEmitter memory
leak detected. 11 end listeners added. Use emitter.setMaxListeners()
to increase limit (node:18488) MaxListenersExceededWarning: Possible
EventEmitter memory leak detected. 11 data listeners added. Use
emitter.setMaxListeners() to increase limit
Это мой полный код.В основном, я хочу читать CSV.Преобразуйте его в JSON и запишите в файл.Я хочу сделать эту операцию, используя поток.Я использую модуль csv-parser npm
const fs = require('fs');
var Readable = require('stream').Readable;
const csv = require('csv-parser');
class Counter extends Readable {
constructor() {
super();
}
_read () {
readStream.on('data', (data) => {
console.log(JSON.stringify(data));
this.push(JSON.stringify(data));
});
readStream.on('end', () => {
this.push(null);
});
}
}
let writeStream = fs.createWriteStream('tmp1');
let readStream = fs.createReadStream('tmp.csv').pipe(csv());
var counter = new Counter();
counter.pipe(writeStream);