Tengo problemas para actualizar mi versión de Angular. Cuando uso ng update obtengo el siguiente resultado:
Name Version Command to update ---------------------------------------------------------------------------------------- @angular/cdk 12.1.2 -> 12.2.0 ng update @angular/cdk @angular/cli 12.1.2 -> 12.2.0 ng update @angular/cli @angular/core 12.1.2 -> 12.2.0 ng update @angular/core @angular/material 12.1.2 -> 12.2.0 ng update @angular/materialLuego trato de actualizar los cuatro usando el comando:
ng update @angular/cdk @angular/cli @angular/core @angular/material -C El package.json se actualiza y luego se ejecuta npm i para instalar todos los paquetes. Aquí me encuentro con el siguiente error:
npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree npm ERR! npm ERR! Found: @angular-devkit/build-angular@12.1.2 npm ERR! node_modules/@angular-devkit/build-angular npm ERR! dev @angular-devkit/build-angular@"^12.2.0" from the root project npm ERR! npm ERR! Could not resolve dependency: npm ERR! dev @angular-devkit/build-angular@"^12.2.0" from the root project npm ERR! npm ERR! Conflicting peer dependency: @angular/localize@12.2.0 npm ERR! node_modules/@angular/localize npm ERR! peerOptional @angular/localize@"^12.0.0 || ^12.2.0-next" from @angular-devkit/build-angular@12.2.0 npm ERR! node_modules/@angular-devkit/build-angular npm ERR! dev @angular-devkit/build-angular@"^12.2.0" from the root project npm ERR! npm ERR! Fix the upstream dependency conflict, or retry npm ERR! this command with --force, or --legacy-peer-deps npm ERR! to accept an incorrect (and potentially broken) dependency resolution. No sé por qué dice Found: @angular-devkit/build-angular@12.1.2 cuando en el package.json todos los archivos relacionados con @angular tienen ~12.2.0 declarado como versión.
Elimina node_modules e instálalo de nuevo. También asegúrese de que package.json no tenga dependencias duplicadas.
nunca debe actualizar angular en todos los ámbitos de esa manera. En cambio, está en orden jerárquico, porque muchas de esas dependencias dependen unas de otras. por lo que varios de ellos desaparecen.
Es muy fácil solucionar este problema simplemente eliminando node_modules y ejecutando npm install nuevamente.
esta vez en orden:
npm install @angular/cli@latest -g ng update @angular/cli, ng update @angular/common npm install @angular/cdk@latest npm install @angular/material@latesten angular 12.2 hay advertencias sobre chokidar si ejecuta npm audit fix no hará nada, y hay varios otros: solo tiene que esperar hasta que los arreglen porque son dependencias de desarrollo.
esto se toma de una versión de trabajo actual del proyecto en vivo con universal:{
"@angular/animations": "~12.1.0", "@angular/cdk": "^12.2.0", "@angular/common": "~12.1.0", "@angular/compiler": "~12.1.0", "@angular/core": "~12.1.0", "@angular/fire": "^6.1.5", "@angular/forms": "~12.1.0", "@angular/platform-browser": "~12.1.0", "@angular/platform-browser-dynamic": "~12.1.0", "@angular/platform-server": "~12.1.0", "@angular/router": "~12.1.0", "@angular/service-worker": "~12.1.0", "@easypost/api": "^3.11.2", "@nguniversal/express-engine": "^12.1.0", "bootstrap": "^5.0.2", "dayjs": "^1.10.6", "express": "^4.15.2", "firebase": "^8.8.1", "ngx-quill": "^14.1.2", "quill": "^1.3.7", "quill-image-resize-module": "^3.0.0", "rxjs": "~6.6.0", "tslib": "^2.2.0", "zone.js": "~0.11.4" }Intente eliminar la carpeta node_modules y el archivo package-lock.json y luego reinstale npm , lo que podría resolver su problema.
Entonces, ejecute los siguientes comandos:
remove node_modules remove package-lock.json npm install