Angular 8 : TypeError: Cannot read property 'kind' of undefined, When build my code for Production

Angular 8 : TypeError: Cannot read property 'kind' of undefined, When build my code for Production

Angular 8:类型错误:无法读取未定义的 属性 'kind',当构建我的生产代码时

  Module build failed (from ./node_modules/@angular-devkit/build-optimizer/src/build-optimizer/webpack-loader.js):
    TypeError: Cannot read property 'kind' of undefined
        at isAngularDecoratorMetadataExpression (/home/Project/node_modules/@angular-devkit/build-optimizer/src/transforms/scrub-file.js:265:35)
        at checkNodeForDecorators (/home/Project/node_modules/@angular-devkit/build-optimizer/src/transforms/scrub-file.js:77:21)
        at visitNodes (/home/Project/node_modules/@angular-devkit/build-optimizer/node_modules/typescript/lib/typescript.js:16514:30)
        at Object.forEachChild (/home/Project/adminPanel/node_modules/@angular-devkit/build-optimizer/node_modules/typescript/lib/typescript.js:16740:24)
        at checkNodeForDecorators (/home/Project/node_modules/@angular-devkit/build-optimizer/src/transforms/scrub-file.js:68:31)
        at visitNode (/home/Project/node_modules/@angular-devkit/build-optimizer/node_modules/typescript/lib/typescript.js:16505:24)
        at Object.forEachChild (/home/Project/node_modules/@angular-devkit/build-optimizer/node_modules/typescript/lib/typescript.js:16635:21)
        at checkNodeForDecorators (/home/Project/node_modules/@angular-devkit/build-optimizer/src/transforms/scrub-file.js:68:31)
        at visitNode (/home/Project/node_modules/@angular-devkit/build-optimizer/node_modules/typescript/lib/typescript.js:16505:24)
        at Object.forEachChild (/home/Project/node_modules/@angular-devkit/build-optimizer/node_modules/typescript/lib/typescript.js:16692:24)
        at checkNodeForDecorators (/home/Project/newspod/adminPanel/node_modules/@angular-devkit/build-optimizer/src/transforms/scrub-file.js:68:31)
        at visitNode (/home/ Project/node_modules/@angular-devkit/build-optimizer/node_modules/typescript/lib/typescript.js:16505:24)
        at Object.forEachChild (/home/Project/node_modules/@angular-devkit/build-optimizer/node_modules/typescript/lib/typescript.js:16703:24)
        at checkNodeForDecorators (/home/Project/node_modules/@angular-devkit/build-optimizer/src/transforms/scrub-file.js:68:31)
        at visitNode (/home/Project/node_modules/@angular-devkit/build-optimizer/node_modules/typescript/lib/typescript.js:16505:24)
        at Object.forEachChild (/home/Project/node_modules/@angular-devkit/build-optimizer/node_modules/typescript/lib/typescript.js:16599:21)

我正在使用这个命令来构建

ng build --prod

将您的 typescript 版本更新为 3.8.3

tsconfig.json 文件中更改 disableTypeScriptVersionCheck

"angularCompilerOptions": {
  "disableTypeScriptVersionCheck": true
}

将 angular 开发工具包更新到最新版本。按照以下链接进行操作。

https://github.com/ckeditor/ckeditor4-angular/issues/78#issuecomment-565803253 https://www.npmjs.com/package/@angular-devkit/build-angular

npm i @angular-devkit/build-angular

很多情况下都会出现此问题,主要原因之一是@angular/cli 的安装版本与@angular/cli 的全局安装版本不同,确保两者是相同的版本。在其他情况下,您必须更新 devkit。

请看看这些线程,你会得到一个想法:

  1. https://github.com/angular/angular-cli/issues/13172
  2. https://github.com/angular/angular-cli/issues/13861

我通过更改我的 ngx-toastr 版本解决了这个问题 Related to angular 请将 ngx-toastr 模块版本与 Angular

进行比较

参考这个 link https://www.npmjs.com/package/ngx-toastr

我有同样的问题,通过更改 angular.json 文件中的 buildOptimizer: false 解决。

改一下

buildOptimizer: true

buildOptimizer: false

对我有用