看起来像Angular Ivy尚未准备好。我正在尝试使用ivular构建我的项目,这是Angular 9的主要思想。许多库与此功能不兼容,其中一个库是@angular/flex-layout
。材料和服务人员也有同样的问题。
使用ng build --prod --aot -c=production
脚本构建项目后,我得到了:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
node_modules/@angular/flex-layout/core/typings/media-trigger/media-trigger.d.ts:71:18 - error TS2314: Generic type 'ɵɵFactoryDef' requires 2 type argument(s).
71 static ɵfac: ɵngcc0.ɵɵFactoryDef<MediaTrigger>;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
node_modules/@angular/flex-layout/extended/typings/show-hide/show-hide.d.ts:18:18 - error TS2314: Generic type 'ɵɵFactoryDef' requires 2 type argument(s).
18 static ɵfac: ɵngcc0.ɵɵFactoryDef<ShowHideStyleBuilder>;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
node_modules/@angular/flex-layout/extended/typings/show-hide/show-hide.d.ts:49:18 - error TS2314: Generic type 'ɵɵFactoryDef' requires 2 type argument(s).
49 static ɵfac: ɵngcc0.ɵɵFactoryDef<ShowHideDirective>;
该错误的发生时间长于我在上面所写的内容,我花了一些时间对此问题进行了很好的搜索,桌上没有任何内容,但是禁用了常春藤,这不是一个好选择。
答案 0 :(得分:24)
幸运的是,Angular 9.1已经发布,问题得以解决。升级到9.1后(通过运行ng update @angular/cli @angular/core
),我删除了node_modules并再次重新安装。然后,我将打字稿从3.7.5
升级到3.8.3
。现在ngcc工作正常,构建后我没有任何错误。
有关更多信息:Angular Version 9.1