• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
    • Questions
    • Teachers
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

4.8K
Views
npm: Cuándo usar `--force` y `--legacy-peer-deps`

Soy nuevo en npm y estoy tratando de entender cómo funciona la recreación del directorio node_modules para la implementación.

Usamos npm ci en lugar de npm install para garantizar un borrón y cuenta nueva durante la implementación. Sin embargo, cuando lo ejecutamos sin banderas, obtenemos el siguiente error:

Solucione el conflicto de dependencia ascendente o vuelva a intentar este comando con --force o --legacy-peer-deps para aceptar una resolución de dependencia incorrecta (y potencialmente rota).

La documentación para npm install para --force es la siguiente (no hay indicadores en la página de npm ci ):

El argumento -f o --force obligará a npm a buscar recursos remotos incluso si existe una copia local en el disco.

Mientras tanto, la documentación para --legacy-peer-deps dice:

--legacy-peer-deps: ignora todas las dependencias de los pares al instalar, al estilo de las versiones 4 a 6 de npm.

Parece que ambas banderas permitirán que npm ci genere el directorio node_modules sin ningún problema, pero aún no tengo claras las diferencias entre los dos.

Por lo que entiendo, --force parece que será sobre la base de que la última dependencia descargada gana y sobrescribirá cualquier dependencia descargada previamente. Mientras tanto, --legacy-peer-deps siempre omitirá las dependencias de pares (cualesquiera que sean) durante la instalación, incluso si no hay problemas.

¿Cuáles son las diferencias entre las dos banderas y cuándo debemos usarlas?

about 3 years ago · Santiago Trujillo
2 answers
Answer question

0

En la nueva versión de npm (v7), de forma predeterminada, npm install fallará cuando encuentre dependencias entre pares en conflicto. Antes no era así.

Eche un vistazo aquí para obtener más información sobre las dependencias entre pares en npm v7.

Las diferencias entre los dos están a continuación:

  • --legacy-peer-deps : ignore todas las dependencias de los pares al instalar, al estilo de las versiones 4 a 6 de npm.

  • --strict-peer-deps : falla y aborta el proceso de instalación para cualquier peerDependencies en conflicto cuando se encuentre. De forma predeterminada, npm solo fallará en caso de conflictos de peerDependencies provocados por las dependencias directas del proyecto raíz.

about 3 years ago · Santiago Trujillo Report

0

Cuando el proyecto tiene un conflicto de versión de NPM y aparece un error.

Error

 An unhandled exception occurred: The 'buildOptimizer' option cannot be used without 'aot'.

En el archivo .npmrc : esto ignora todas las dependencias de pares

 legacy-peer-deps true

Símbolo del sistema instala versiones de dependencia que es más estricta

 npm install --force
about 3 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 Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error