Привет, я изменил свой код с выборки на axios, и когда я запускаю свои тесты, у меня возникает эта проблема ... Может ли кто-нибудь помочь мне с этим?
SyntaxError: нельзя использовать оператор импорта вне модуля
> 1 | import axios from "axios";
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".
Here's what you can do:
• If you are trying to use ECMAScript Modules, see https://jestjs.io/docs/en/ecmascript-modules for how to enable it.
• To have some of your "node_modules" files transformed, you can specify a custom "transformIgnorePatterns" in your config.
• If you need a custom transformation specify a "transform" option in your config.
• If you simply want to mock your non-JS modules (e.g. binary assets) you can stub them out with the "moduleNameMapper" config option.
You'll find more details and examples of these config options in the docs:





Эта проблема возникла после обновления axios с 0.27.2 до 1.0.0. Есть открытая проблема , так что, вероятно, это скоро будет исправлено. Пока они работают над этим, вы можете временно исправить это, настроив transformIgnorePatterns в конфигурации jest:
transformIgnorePatterns = ["node_modules/(?!axios)/"]
Для меня помог следующий jest.config.js сетап:
transformIgnorePattern: [
'<rootDir>/node_modules/(?!axios)/'
]
наряду с
moduleNameMapper: {
'^axios$': require.resolve('axios'),
}