@dimoff66
Кратко о себе: Я есть

Почему Jest не понимает синтаксис ?. в импортируемом файле?

1. Создал npm-пакет с полезной функцией. Протестировал jest-ом, опубликовал на npm
2. Проверил на codesandbox, импортировав пакет и запустив функцию - все прекрасно работает
3. Теперь создаю другой пакет, в который импортирую первый и при запуске тестов через jest получаю ошибку

Jest encountered an unexpected token

This usually means that you are trying to import a file which Jest cannot parse, e.g. it's not plain JavaScript.

By default, if Jest sees a Babel config, it will use that to transform your files, ignoring "node_modules".


Details:

C:\OSPanel\domains\localhost\js projects\sql-for-js-simple\node_modules\split-smartly\index.js:452 (searchSettings.mentions?.[fragment] && ACTION_ADD_FRAGMENT) ^

SyntaxError: Unexpected token .


То есть ругается на синтаксис searchSettings.mentions?.[fragment]

в импортированном файле, при том что в самом проекте этот синтаксис прекрасно работает.
Вопрос: что я делаю не так?

Ссылка на проект, где возникает ошибка(исключительно при импорте в другой проект и запуске тестов через jest)
https://github.com/dimoff66/split-smartly
  • Вопрос задан
  • 219 просмотров
Пригласить эксперта
Ответы на вопрос 1
Robur
@Robur
Знаю больше чем это необходимо
Видимо другой проект у вас не настроен на понимание синтаксиса "?."
Сообщение от jest вполне информативное
"This usually means that you are trying to import a file which Jest cannot parse, e.g. it's not plain JavaScript.

By default, if Jest sees a Babel config, it will use that to transform your files, ignoring "node_modules"."

вам надо либо положить конфиг бабеля такой же чтобы понимал новый синтаксис, либо компилировать ваш код тем же бабелем в более старый стандарт
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы