Как избежать ошибки, вызывающей csvtojson

Я пытаюсь использовать csvtojson

const csv = require("csvtojson");
const csvFilePath = require('./../../books.csv');
csv()
.fromFile(csvFilePath)
.then((jsonObj)=>{
    console.log(jsonObj);
})

Мой файл.csv

Book,Author,Amount,Price
The Compound Effect,Darren Hardy,5,9.48
The 7 Habits of Highly Effective People,Stephen R. Covey,4,23.48
The Miracle Morning,Hal Elrod,10,21.34
Influence: The Psychology of Persuasion,Robert B. Cialdini,4,12.99
The ONE Thing,Gary Keller,1,11.18

И у меня следующая ошибка

The Compound Effect,Darren Hardy,5,9.48
^^^^^^^^

SyntaxError: Unexpected identifier
 at Module._compile (internal/modules/cjs/loader.js:723:23)

Что случилось? Спасибо)

3 ответа

Проблема здесь в том, что вы используете функцию require('./../../books.csv'); чтобы импортировать ваш файл.

После прочтения документации могу заверить, что вам нужно только указать путь к файлу CSV.

Итак, ваш код должен быть таким:

const csv = require('csvtojson');
const csvFilePath = './../../books.csv';

csv().fromFile(csvFilePath).then((jsonObj)=>{
    console.log(jsonObj);
})

И желаемый результат должен быть:

[ { Book: 'The Compound Effect',
    Author: 'Darren Hardy',
    Amount: '5',
    Price: '9.48' },
  { Book: 'The 7 Habits of Highly Effective People',
    Author: 'Stephen R. Covey',
    Amount: '4',
    Price: '23.48' },
  { Book: 'The Miracle Morning',
    Author: 'Hal Elrod',
    Amount: '10',
    Price: '21.34' },
  { Book: 'Influence: The Psychology of Persuasion',
    Author: 'Robert B. Cialdini',
    Amount: '4',
    Price: '12.99' },
  { Book: 'The ONE Thing',
    Author: 'Gary Keller',
    Amount: '1',
    Price: '11.18' } ]

Проблема решилась изменением пути)

const csvFilePath = './../../books.csv';

к

const csvFilePath = `${__dirname}/../../books.csv`;

Однако я не думаю, что в этом случае использовать "__dirname" - хорошая идея. Если есть идеи по этому поводу, напишите, пожалуйста)

Я думаю, тебе следовало бы " в вашем.csv файле или используйте quote для вариантов обработки

https://www.npmjs.com/package/csvtojson

Другие вопросы по тегам