Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

178
Views
Problemas con ngModule al usar Angular 4

Tengo una aplicación Angular (2) configurada con un paquete web que importa módulos de otro repositorio común.

Entonces, el repositorio común tiene un archivo common.module.ts con algo como esto:

 @NgModule({ imports: [...], declarations: [...], providers: [...], exports: [...] }) export class CommonModule {}

y luego en mi aplicación principal estoy importando esto en mi app.module.ts

 @NgModule({ imports: [ ... CommonModule, ], declarations: [...], providers: [...], bootstrap: [AppComponent] }) export class AppModule { }

Esto funciona bien tal como está en Angular2, pero luego estoy tratando de migrar a Angular 4.0 en mi proyecto principal (sin tocar el repositorio común, ya que lo usan otros repositorios que tampoco se migran). Así que cambio mis versiones en mi paquete.json y reconstruyo y todo parece estar bien, pero luego cuando cargo la aplicación en el navegador obtengo esto

Error no detectado: valor inesperado 'CommonModule' importado por el módulo 'AppModule'. Agregue una anotación @NgModule.

¿Alguien sabe lo que está pasando? el CommonModule ya está declarado usando @NgModule. Revisé node_modules en caso de que haya algún problema con los archivos importados y encontré common_module.d.ts que contiene

 ... export declare class CommonModule {}

pero eso para mí está bien, ese es el archivo de barril y el decorador se ha quitado de aquí.

¿Algunas ideas?

about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Ok, finalmente obtuve ayuda en Angular github para que funcione.

Entonces, lo que tuve que hacer fue cambiar las dependencias en mi proyecto común para usar cualquier biblioteca angular> = 2.0.0, como esta

 "dependencies": { "@angular/core": ">=2.0.0", "@angular/common": ">=2.0.0", "@angular/router": ">=3.0.0", "@angular/http": ">=2.0.0", "@angular/platform-browser": ">=2.0.0",

Ejecuto yarn para actualizar las dependencias y luego envío los cambios a mi repositorio de github.

Una vez en mi proyecto de aplicación, actualicé mi biblioteca común ejecutando yarn upgrade my_github_repo/common#feature/angular4 (feature/angular4 es el nombre de la rama en mi proyecto común donde impulsé los cambios)

y eso es todo, de esta manera solo hay una biblioteca angular en mi proyecto, 4.0.0, que es la que usa mi aplicación.

Probé esto con otra aplicación con Angular 2.0.0 que también usa la biblioteca común y, en este caso, la versión de angular en mi node_modules es 2.0.0, así que todo bien.

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!