Me encontré en un ciclo casi interminable de errores al intentar actualizar mi Angular CLI y NPM. Cada vez que actualizo, recibo mensajes de ADVERTENCIA que me dicen que instale dependencias de pares (ver a continuación), pero cada vez que instalo una dependencia, recibo más mensajes de ADVERTENCIA. ¿Hay una mejor manera de manejar esta situación o realmente toma horas?
npm WARN @angular/animations@5.2.1 requires a peer of @angular/core@5.2.1 but none is installed. You must install peer dependencies yourself. npm WARN @angular/compiler-cli@5.1.0 requires a peer of typescript@>=2.4.2 <2.6 but none is installed. You must install peer dependencies yourself. npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.6 requires a peer of @angular/core@^4.0.3 but none is installed. You must install peer dependencies yourself. npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.6 requires a peer of @angular/common@^4.0.3 but none is installed. You must install peer dependencies yourself. npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.6 requires a peer of @angular/forms@^4.0.3 but none is installed. You must install peer dependencies yourself. npm WARN @schematics/angular@0.1.17 requires a peer of @angular- devkit/core@0.0.29 but none is installed. You must install peer dependencies yourself. npm WARN @schematics/angular@0.1.17 requires a peer of @angular- devkit/schematics@0.0.52 but none is installed. You must install peer dependencies yourself. npm WARN @schematics/schematics@0.0.11 requires a peer of @angular- devkit/core@0.0.22 but none is installed. You must install peer dependencies yourself. npm WARN angular2-notifications@0.7.4 requires a peer of @angular/core@^4.0.1 but none is installed. You must install peer dependencies yourself. npm WARN angular2-notifications@0.7.4 requires a peer of @angular/common@^4.0.1 but none is installed. You must install peer dependencies yourself. npm WARN angular2-notifications@0.7.4 requires a peer of @angular/platform- browser@^4.0.0 but none is installed. You must install peer dependencies yourself. npm WARN angular2-notifications@0.7.4 requires a peer of @angular/animations@^4.0.1 but none is installed. You must install peer dependencies yourself. npm WARN bootstrap@4.0.0-beta.2 requires a peer of jquery@1.9.1 - 3 but none is installed. You must install peer dependencies yourself. npm WARN bootstrap@4.0.0-beta.2 requires a peer of popper.js@^1.12.3 but none is installed. You must install peer dependencies yourself. npm WARN ng2-toasty@4.0.3 requires a peer of @angular/core@^2.4.7 || ^4.0.0 but none is installed. You must install peer dependencies yourself. npm WARN ngx-carousel@1.3.5 requires a peer of @angular/core@^2.4.0 || ^4.0.0 but none is installed. You must install peer dependencies yourself. npm WARN ngx-carousel@1.3.5 requires a peer of @angular/common@^2.4.0 || ^4.0.0 but none is installed. You must install peer dependencies yourself. npm WARN tsickle@0.25.5 requires a peer of typescript@>=2.4.2 <2.6 but none is installed. You must install peer dependencies yourself. npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 (node_modules\fsevents): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})Sé que debo estar haciendo algo mal, pero soy nuevo en Angular.
Las advertencias de dependencia entre pares, la mayoría de las veces, se pueden ignorar. La única vez que querrá tomar medidas es si la dependencia del par falta por completo o si la versión de una dependencia del par es superior a la versión que ha instalado.
Tomemos esta advertencia como ejemplo:
npm WARN @angular/animations@5.2.1 requiere un par de @angular/core@5.2.1 pero no hay ninguno instalado. Debe instalar las dependencias de pares usted mismo.
Con Angular, le gustaría que las versiones que está usando sean consistentes en todos los paquetes. Si hay versiones incompatibles, cambie las versiones en su paquete.json y ejecute npm install para que todas estén sincronizadas. Tiendo a mantener mis versiones para Angular en la última versión, pero deberá asegurarse de que sus versiones sean consistentes para cualquier versión de Angular que necesite (que puede no ser la más reciente).
En una situación como esta:
npm WARN ngx-carousel@1.3.5 requiere un par de @angular/core@^2.4.0 || ^4.0.0 pero ninguno está instalado. Debe instalar las dependencias de pares usted mismo.
Si está trabajando con una versión de Angular superior a la 4.0.0, es probable que no tenga problemas. Nada que hacer con este entonces. Si está utilizando una versión de Angular inferior a 2.4.0, debe actualizar su versión. Actualice el paquete.json y ejecute npm install o ejecute npm install para la versión específica que necesita. Me gusta esto:
npm install @angular/core@5.2.3 --save Puede omitir --save si está ejecutando npm 5.0.0 o superior, esa versión guarda el paquete en la sección de dependencias de package.json automáticamente.
En esta situación:
npm WARN opcional OMITIR DEPENDENCIA OPCIONAL: fsevents@1.1.3 (node_modules\fsevents): npm WARN notsup OMITIR DEPENDENCIA OPCIONAL: Plataforma no compatible para fsevents@1.1.3: se busca {"os":"darwin","arch":"any "} (actual: {"os":"win32","arch":"x64"})
Está ejecutando Windows y fsevent requiere OSX. Esta advertencia se puede ignorar.
¡Espero que esto ayude, y diviértete aprendiendo Angular!
Puede ignorar las advertencias de dependencia de pares utilizando el indicador --force con Angular cli al actualizar las dependencias.
ng update @angular/cli @angular/core --forcePara obtener una lista completa de opciones, consulte los documentos: https://angular.io/cli/update
Actualice su angular (globalmente):
ng actualizar @angular/cli @angular/core
npm uninstall -g @angular/cli
npm install -g @angular/cli
Después, si desea utilizar su antiguo proyecto angular (localmente):
npm list si algunas dependencias han cambiado y obtiene este error:npm ¡ERROR! Falta el departamento de pares: mydependencie, requerido por algún componente
significa que tienes que actualizar tu proyecto:
npm list :
npm install mydependencie