Angular 9 Ivy: el tipo genérico 'ɵɵFactoryDef' requiere 2 argumentos de tipo


17

Parece que Angular Ivy aún no está lista. Estoy tratando de construir mi proyecto usando hiedra, que es la idea principal para Angular 9. Muchas de las bibliotecas no son compatibles con esta característica, una de ellas es @angular/flex-layout. El material y el trabajador de servicio también tienen el mismo problema.

Después de usar el ng build --prod --aot -c=productionscript para construir mi proyecto, obtuve:

                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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>;

El error fue más largo que lo que escribí anteriormente, me tomé mi tiempo para buscar bien este problema, nada sobre la mesa pero deshabilitar la hiedra, que no es una buena opción.

Respuestas:


13

Afortunadamente, se ha lanzado Angular 9.1 y se ha resuelto el problema. Después de actualizar a 9.1 borré mis node_modules y lo reinstalé nuevamente. Luego actualicé mi mecanografiado de 3.7.5a 3.8.3. Ahora el ngcc funciona bien y no tengo errores después de compilar.

Para más información: Angular Versión 9.1


¿Cuál es su comando completo postinstall? ¿es solo "postinstall":"ngcc"?
harishr

@harishr Sí, es "ngcc". Si está actualizando, no use el punto de entrada. Solo quédate con ngcc
Yazan Mehrez

Todavía estoy enfrentando el problema ... tuve que volver a 9.0.5 para resolver el problema
harishr

1
sí, hice eso ... actualicé el mecanografiado en todos los demás paquetes. eliminó node_modules y reinstaló todo, pero aún obteniendo exactamente el mismo error que mencionó en su pregunta. ¿Necesito borrar el caché global?
harishr

1
Sí, eliminar node_modules e npm cache verifyhizo el truco para mí
Mattijs
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.