update tutorial new instalar cli angular angular-cli

angular - tutorial - Módulo no encontrado: Error: No se puede resolver ''./$$_gendir/app/app.module.ngfactory''



ng update (6)

Obtengo este error a continuación después de actualizar mi angular-cli

ERROR in Template parse errors: Can''t bind to ''index'' since it isn''t a known property of ''tag''. ("own)="handleKeydown($event, item)" (onTagEdited)="onTagEdited.emit(item)" [ERROR ->][index]="i" [attr.tabindex]="readonly ? -1 : 0" [class.readonly]="readonly""): TagInputComponent@16:13 ERROR in ./src/main.ts Module not found: Error: Can''t resolve ''./$$_gendir/app/app.module.ngfactory'' in ''D:/xxxx/yyyy/eeeee/eeee/src'' @ ./src/main.ts 5:0-74 @ multi ./src/main.ts

Este error ocurre cuando ejecuto ng build --prod y funciona bien cuando ejecuto ng build sin ningún parámetro,


Aparentemente, este mensaje de error poco útil y confuso puede deberse al uso de exportaciones predeterminadas en su escritura tipográfica consumida por Angular AOT (representación preliminar). El uso de export default class causará este error con cualquier versión de Angular y actualmente no es compatible. Debes cambiar para export class .

Para ver el estado actual del problema y ver si alguna vez se soluciona, consulte https://github.com/angular/angular/issues/11402 . Al momento de escribir esto, el problema ha estado abierto por más de dos años, pero afirman que se solucionará algún día.


Cuando ejecuta la compilación ng en angular 2, la última versión de angular-cli se ejecuta automáticamente con el parámetro --aot (compilación anticipada), por lo que está intentando optimizar su código. Tiene un paquete que aún no es compatible para la optimización. Así que necesitas actualizar tus paquetes. Probablemente los paquetes que tienen **forRoot()** en tu app.module.ts

Recomiendo actualizar todos los paquetes.

Una forma sencilla de actualizar su paquete es usar el paquete ncu npm como se muestra a continuación, el cual obtuve de ¿Cómo actualizo correctamente angular 2 (npm) a la última versión?

Instalar

npm install -g npm-check-updates

Uso

ncu para mostrar

ncu -u para volver a escribir su package.json

y ejecuta npm install para actualizar tus paquetes

Si lo anterior no funcionó, es posible que deba actualizar su código para no cumplir con las normas. Consulte esta url a continuación para realizar cambios en su código. https://medium.com/@isaacplmann/getting-your-angular-2-library-ready-for-aot-90d1347bcad


Enfrenté la segunda parte de este número.

ERROR in ./src/main.ts Can''t resolve ''./$$_gendir/app/app.module.ngfactory''

Se resolvió actualizando angular / cli a 1.2.6 para angular 4

  1. Eliminar la carpeta node_modules
  2. Actualice "@ angular / cli": "1.0.4" a "@ angular / cli": "1.2.6" en package.json bajo devDependencies
  3. Ejecutar npm instalar

Luego, ejecutando "ng build --prod" generó exitosamente la compilación de producción.


Para mí, no he declarado mi componente recién creado en module.ts. Funcionó cuando lo declaré. Compruebe si alguno de sus componentes no está declarado en module.ts.


Tuve el mismo problema y cómo lo resolví fue: elimine el módulo de resolución mejorada de node_modules y luego ejecute

npm install [email protected]

Después de eso, las compilaciones funcionaron como se esperaba ...


Utilizar:

ng build --env=prod

en lugar de:

ng build --prod