【问题标题】:ERROR in ./src/polyfills.ts Module not found: Error: Can't resolve 'zone.js/dist/zone'./src/polyfills.ts 中的错误未找到模块:错误:无法解析“zone.js/dist/zone”
【发布时间】:2019-11-22 00:34:50
【问题描述】:

我有一个 angular 8,它使用 karma/jasmine 来运行一些单元测试。我可以通过执行以下命令 ng test 来运行测试,但出现以下错误:

./src/polyfills.ts 中的错误未找到模块:错误:无法解析 'zone.js/dist/zone' 在 'C:\PrjNET\Elevation3\FW\4.00\Project\Framework\Development\Client\ElevationJS\shell\src' 解决 'zone.js/dist/zone' 在 'C:\PrjNET\Elevation3\FW\4.00\Project\Framework\Development\Client\ElevationJS\shell\src'

有人知道怎么解决吗?

【问题讨论】:

  • 试试npm i zone.js
  • @GopeshSharma 我已经安装了但仍然无法使用
  • 在你的测试文件中你导入zone.js/dist/zone?。如果是,请尝试将其更改为 import 'zone.js/dist/zone-testing'; 虽然 zone-testing 仅存在于 zone.js 0.8.19
  • @GopeshSharma 是的,我知道,但我导入得很好 (import 'zone.js/dist/zone-testing')。另外,我使用的版本是0.8.29
  • 我今天遇到了同样的问题,我检查了上面的答案。尽管一个简单的 npm install 就可以了。我最新的 pull 有一个我没有添加到本地存储库的新包,解决方案是一个简单的 npm 安装。

标签: angular typescript unit-testing jasmine karma-runner


【解决方案1】:

我用这个命令在我的项目中修复了它:

npm install zone.js@0.11.3 --save

我在使用 zone.js@0.8.29 时遇到了这个错误。

【讨论】:

    【解决方案2】:

    我发现我在tsconfig.spec.json 上的测试配置有误。所以我从这个改变:

    {
      "extends": "./tsconfig.es5.json",
      "compilerOptions": {
        "outDir": "../out-tsc/spec",
        "module": "commonjs",
        "target": "es6",
        "baseUrl": "",
        "types": [
          "jest",
          "node"
        ]
      },
      "files": [
        "test.ts",
        "polyfills.ts"
      ],
      "include": [
        "**/*.spec.ts",
        "**/*.d.ts"
      ]
    }
    

    到这里:

    {
      "extends": "./tsconfig.es5.json",
      "compilerOptions": {
        "emitDecoratorMetadata": true,
        "experimentalDecorators": true,
        "outDir": "../out-tsc/spec",
        "module": "commonjs",
        "types": [
          "jasmine",
          "node"
        ]
      },
      "files": [
        "test.ts",
        "polyfills.ts"
      ],
      "include": [
        "**/*.spec.ts",
        "**/*.d.ts"
      ]
    }
    

    错误消失了!

    【讨论】:

    • 如果不知道您的有效组合配置,此答案无济于事。
    猜你喜欢
    • 1970-01-01
    • 2019-07-22
    • 1970-01-01
    • 2019-11-15
    • 2021-03-28
    • 2022-09-26
    • 2021-03-19
    • 2018-06-12
    • 2022-09-27
    相关资源
    最近更新 更多