我和 Jest 一直有这个问题。Jest 抛出一个错误,指向 node_modules 内的依赖项。可能需要配置 jest 以支持此语法,因为它无法解析它。但我不确定配置是什么。
我尝试在 jest.config.ts 文件中添加transformIgnorePatterns,但没有成功,
"node_modules/(?!(geotiff)/)"
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激!
Details:
/Users/Documents/Project/node_modules/quick-lru/index.js:1
({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,jest){export default class QuickLRU extends Map {
^^^^^^
SyntaxError: Unexpected token 'export'
at Runtime.createScriptFromCode (node_modules/jest-cli/node_modules/jest-runtime/build/index.js:1796:14)
at Object.<anonymous> (node_modules/geotiff/dist-module/source/blockedsource.js:1:1)
Run Code Online (Sandbox Code Playgroud)
这是 jest.config.ts
// jest.config.ts
import type {Config} from "@jest/types";
const config : Config.InitialOptions = {
"collectCoverageFrom": [
"src/**/*.{js,jsx,ts,tsx}",
"!**/*.d.ts"
],
"setupFiles": [
"<rootDir>/config/polyfills.js"
],
"setupFilesAfterEnv": [
"<rootDir>/src/setupTests.ts"
],
"testMatch": [
"<rootDir>/src/**/*.(test).{js,jsx,ts,tsx}",
"<rootDir>/src/**/?(*.)(spec|test).{js,jsx,ts,tsx}"
],
"testEnvironment": "node",
"testEnvironmentOptions": {
"url" : "http://localhost"
},
"transform": {
"^.+\\.(js|jsx|mjs)$": "<rootDir>/node_modules/babel-jest",
"^.+\\.tsx?$": "<rootDir>/config/jest/typescriptTransform.js", …Run Code Online (Sandbox Code Playgroud)