Факторизовать дублированный код с Express JS - PullRequest
0 голосов
/ 09 января 2020

Я должен сделать несколько раз:

fs.createReadStream(file)
    .pipe(csv({ headers: false, separator: ';',  }))
    .on('data', (row) => {
        let item = {
            date: row[0],
            value: row[1]
        }
        let item2 = {
            date: moment(row[0], "DD-MM-YYYY HH:mm").add(30, "minutes").format("DD/MM/YYYY HH:mm"),
            value: row[2]
        }
        autoConso.push(item);
        autoConso.push(item2);
    })
    .on('end', () => {
        console.log('CSV file successfully processed');
    });

С типом файлов Difrents.

Итак, я должен дублировать код.

Я пытался извлечь метод, как что:

function parseCSV(file) {
    fs.createReadStream(file)
        .pipe(csv({headers: false, separator: ';',}))
        .on('data', (row) => {
            let item = {
                date: row[0],
                value: row[1]
            }
            let item2 = {
                date: moment(row[0], "DD-MM-YYYY HH:mm").add(30, "minutes").format("DD/MM/YYYY HH:mm"),
                value: row[2]
            }
            autoConso.push(item);
            autoConso.push(item2);
        })
        .on('end', () => {
            console.log('CSV file successfully processed');
            return autoConso;
        });
}

result = parseCSV(consoCDCFile);

но result не определено.

Что я делаю не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...