Javascript 为什么测试失败并出现错误SyntaxError:意外的标记{?

Javascript 为什么测试失败并出现错误SyntaxError:意外的标记{?,javascript,vue.js,unit-testing,jestjs,Javascript,Vue.js,Unit Testing,Jestjs,你好! 该项目使用Webpack5,测试本身是在转换之前编写的。 虽然配置是根据jest文档编写的,但babel显然存在问题 我尝试了一切,在论坛和Github上查找了很多,但我找不到解决方案。我尝试的一切似乎都不起作用。我需要帮助! 谢谢大家! ({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,global,jest){import { shallowMount

你好! 该项目使用Webpack5,测试本身是在转换之前编写的。 虽然配置是根据jest文档编写的,但babel显然存在问题 我尝试了一切,在论坛和Github上查找了很多,但我找不到解决方案。我尝试的一切似乎都不起作用。我需要帮助! 谢谢大家!

({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,global,jest){import { shallowMount, mount, createLocalVue } from '@vue/test-utils';
                                                                                                ^

SyntaxError: Unexpected token {

  at Runtime.createScriptFromCode (../../node_modules/jest-runtime/build/index.js:1350:14)

}

这通常是一个解析错误,您必须告诉Jest您希望如何解析测试文件及其依赖项。为了正确地帮助您,我需要查看您的jest.config文件(或您的package.json,具体取决于您决定在何处设置jest实现)

以下是一些基本设置以指导您:

// .babelrc
{
    "presets": [
        [
            "@babel/preset-env",
            {
                "targets": {
                    "esmodules": true
                }
            }
        ],
        "vue"
    ]
}
记得先安装npm安装-D babel预设vue


祝你今天愉快

你能展示一下你的代码中错误指向的地方吗?@DavidGrosh
import{shallowMount,mount,createLocalVue}来自“@vue/test-utils”
-很遗憾,我无法消除错误,我在问题中附加了pakage.json文件,这是jest的配置
{
"presets": [["@babel/env", { "modules": false }]],
"env": {
    "test": {
        "presets": [["@babel/env", { "targets": { "node": "current" } }]]
    }
}
// .babelrc
{
    "presets": [
        [
            "@babel/preset-env",
            {
                "targets": {
                    "esmodules": true
                }
            }
        ],
        "vue"
    ]
}
// package.json
{
  "jest": {
    "moduleFileExtensions": ["js", "json", "vue"],
    "transform": {
      "^.+\\.js$": "babel-jest",
      "^.+\\.vue$": "vue-jest"
    }
  }
}