Jest js node_modules\jest\node_modules\jest-cli\build\cli\index.js:227 } catch {

paw*_*yk 5 javascript npm jestjs

npm init npm i -D jest在本教程中运行

运行推荐后我收到此错误 nmp test

这不是来自生物.js 或生物.test.js 的错误,因为没有发生此文件错误。我怎样才能解决这个问题 ?我已经尝试恢复 mode_modules。我不知道这有什么问题,但我正在使用节点 8.17.0,因为我正在使用 Firebase 云功能

PS C:\Users\Pawel\Desktop\HerosIIIJS> npm test

> heros_iii_js@1.0.0 test C:\Users\Pawel\Desktop\HerosIIIJS
> jest

C:\Users\Pawel\Desktop\HerosIIIJS\node_modules\jest\node_modules\jest-cli\build\cli\index.js:227
    } catch {
            ^

SyntaxError: Unexpected token {
at createScript (vm.js:80:10)
    at Object.runInThisContext (vm.js:139:10)
    at Module._compile (module.js:617:28)
    at Object.Module._extensions..js (module.js:664:10)
    at Module.load (module.js:566:32)
    at tryModuleLoad (module.js:506:12)
    at Function.Module._load (module.js:498:3)
    at Module.require (module.js:597:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (C:\Users\Pawel\Desktop\HerosIIIJS\node_modules\jest\node_modules\jest-cli\bin\jest.js:16:3)
npm ERR! Test failed.  See above for more details.
Run Code Online (Sandbox Code Playgroud)
const getProjectListFromCLIArgs = (argv, project) => {
  const projects = argv.projects ? argv.projects : [];

  if (project) {
    projects.push(project);
  }

  if (!projects.length && process.platform === 'win32') {
    try {
      projects.push((0, _jestUtil().tryRealpath)(process.cwd()));
    } catch { // <= error
      // do nothing, just catch error
      // process.binding('fs').realpath can throw, e.g. on mapped drives
    }
  }

  if (!projects.length) {
    projects.push(process.cwd());
  }

  return projects;
};
Run Code Online (Sandbox Code Playgroud)

包.json

{
  "name": "heros_iii_js",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "jest"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "jest": "^26.6.2"
  }
}

Run Code Online (Sandbox Code Playgroud)

文件结构:

![在此处输入图片说明

小智 12

升级 node.js 在旧版本的 node 中,它们没有处理 jest 文件的 catch 块。

它将从 node -v9.11.2 开始工作。