Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jest错误意外标记。。。(ES6)_Javascript_Reactjs_Unit Testing_Ecmascript 6_Jestjs - Fatal编程技术网

Javascript Jest错误意外标记。。。(ES6)

Javascript Jest错误意外标记。。。(ES6),javascript,reactjs,unit-testing,ecmascript-6,jestjs,Javascript,Reactjs,Unit Testing,Ecmascript 6,Jestjs,每当我在命令行中运行jest时,都会出现以下错误: ● Test suite failed to run /Users/<USER>/<Project>/src/login/LoginAPI.js:13 ...headers, ^^^ SyntaxError: Unexpected token ... 这是my.babelrc文件的外观: { "presets":["env", "react"] } 这就是我的package.js

每当我在命令行中运行jest时,都会出现以下错误:

 ● Test suite failed to run

/Users/<USER>/<Project>/src/login/LoginAPI.js:13
        ...headers,
        ^^^

SyntaxError: Unexpected token ...
这是my.babelrc文件的外观:

{ "presets":["env", "react"] }
这就是我的package.json中的内容:

"dependencies": {
    "express": "^4.15.4",
    "express-healthcheck": "^0.1.0",
    "js-cookie": "^2.1.4",
    "normalize.css": "^7.0.0",
    "query-string": "^5.0.0",
    "react": "^15.6.1",
    "react-dom": "^15.6.1",
    "react-router-dom": "^4.2.2"
  },
  "devDependencies": {
    "babel-jest": "^21.2.0",
    "babel-preset-env": "^1.6.1",
    "babel-preset-es2015": "^6.24.1",
    "enzyme": "^3.1.0",
    "enzyme-adapter-react-15": "^1.0.2",
    "jest": "^21.2.1",
    "jest-cli": "^21.2.1",
    "react-scripts": "1.0.10"
  },
  "jest": {
    "moduleNameMapper": {
      "\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$": "<rootDir>/__mocks__/fileMock.js",
      "\\.(css|less)$": "<rootDir>/__mocks__/styleMock.js"
    },
    "moduleFileExtensions": ["js"],
    "moduleDirectories": [
      "node_modules",
      "bower_components",
      "shared"
    ],
    "testPathIgnorePatterns": [
      "/node_modules/",
      "/yarn-cache/"
    ]
  }
“依赖项”:{
“快车”:“^4.15.4”,
“快速健康检查”:“^0.1.0”,
“js cookie”:“^2.1.4”,
“normalize.css”:“^7.0.0”,
“查询字符串”:“^5.0.0”,
“反应”:“^15.6.1”,
“react dom”:“^15.6.1”,
反应路由器dom“^4.2.2”
},
“依赖性”:{
“巴别塔笑话”:“^21.2.0”,
“巴别塔预设环境”:“^1.6.1”,
“babel-preset-es2015”:“^6.24.1”,
“酶”:“^3.1.0”,
“酶-适配器-反应-15”:“^1.0.2”,
“笑话”:“^21.2.1”,
“jest cli”:“^21.2.1”,
“反应脚本”:“1.0.10”
},
“笑话”:{
“moduleNameMapper”:{
“\ \(jpg | jpeg | png | gif | eot | otf | webp | svg | ttf | woff | woff2 | mp4 | webm | wav | mp3 | m4a | aac | oga |)$”:“/(uu mocks |/uu/fileMock.js,
“\\(css | less)$”:“/\uu mocks\uuu/styleMock.js”
},
“moduleFileExtensions”:[“js”],
“模块目录”:[
“节点_模块”,
“bower_组件”,
“共享”
],
“testPathIgnorePatterns”:[
“/node_modules/”,
“/纱线缓存/”
]
}

此语法需要使用特定的巴别塔预设

然后将此添加到您的.alrc

{
  "plugins": ["transform-object-rest-spread"]
}
您可能想添加,因为它有更多的ES6好东西


注意:

我认为有几种解决方案,这应该概述其中的一些。我想先试试这个:

 {
   "presets": ["es2015", "stage-3", "react"]
 }
在巴别塔7中,
babel插件转换对象rest spread
将报告错误:
SpreadProperty已重命名为SpreadElement

因此,我使用:

npm install --save-dev @babel/plugin-proposal-object-rest-spread
和config.lrc

{
  "plugins": ["@babel/plugin-proposal-object-rest-spread"]
}
在package.json中添加“schema utils”:“2.6.6”作为“依赖项”

"schema-utils": "2.6.6",

我想你需要object spread操作符插件。这不是你正在使用的ES6功能,object spread操作符甚至还没有出现在语言中,只有第3阶段。您可能已经习惯了允许它的jsx,但它在默认情况下不工作js@Axnyff-哦,我以为这是ES6的一部分。那么这是否意味着我需要将stage3添加到我的.babelrc中?
{
  "plugins": ["@babel/plugin-proposal-object-rest-spread"]
}
"schema-utils": "2.6.6",