未捕获的ReferenceError:__importDefault未定义

Joh*_*ley 5 npm typescript angular angular7 angular8

我是新手。我在index.component.ts文件中遇到此错误。

未捕获的ReferenceError:__importDefault未定义

附有错误屏幕截图

Edi*_*son 15

我从 6 升级到 8 时遇到了这个问题,这是由于打字稿造成的,因为我的Type Script版本无法降级,我已经覆盖了这个方法。通过在我的 html 脚本标签中使用:添加以下代码以index.html解决问题

GitHub 问题

<script> var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }</script>
Run Code Online (Sandbox Code Playgroud)


Bru*_*JCM 13

我在从 8 升级到 9 时遇到了这个问题,认为这是一个错误,甚至开始在https://github.com/angular/angular/issues/35208 中报告它,但我不确定它是否真的是一个错误。不过,它可能会帮助遇到此错误的人,所以我在这里发帖。

简短的回答:

出于某种原因,因为我在没有运行迁移的情况下更新了 Angular CLI(由于我有一些非常特殊的限制),我的情况package.json是这样的(那些依赖项被抛在了后面):

  "devDependencies": {
    "@angular-devkit/build-angular": "^0.803.20",
    "@angular-devkit/build-ng-packagr": "~0.803.20",
    ....
Run Code Online (Sandbox Code Playgroud)

改成下面的版本后,问题就没有了 如果是下面这样的,就不会出现问题了

  "devDependencies": {
    "@angular-devkit/build-angular": "~0.900.1",
    "@angular-devkit/build-ng-packagr": "~0.900.1",
    ....
Run Code Online (Sandbox Code Playgroud)

请记住,我在此处显示了错误/正确的软件包版本,因此很容易识别症状,但我不建议您手动更新它们,请运行 CLI 迁移(如故障单中所述),它们将被正确更新。


Kir*_*kov 8

这为我修好了。

将这些行添加到polyfills.ts

const w: any = window
// Fix "missing __importDefault", as per https://github.com/angular/angular/issues/32215#issuecomment-543459862
w.__importDefault = (w && w.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }
Run Code Online (Sandbox Code Playgroud)


小智 5

当我将项目从 angular 7 更新到 8 时,我遇到了同样的问题。运行ng servegit 后:

Angular Compiler 中的 ERROR 需要 TypeScript >=3.4.0 和 <3.6.0,但找到了 3.6.2。

在那之后:

“未捕获的 ReferenceError: __importDefault 未定义。

我跑了npm install typescript@~3.4.0,我的问题解决了。


小智 5

将以下脚本放在 index.html 文件的 head 部分下

<script>
   var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }
</script>
Run Code Online (Sandbox Code Playgroud)