¿Cómo limpiar la carpeta node_modules de paquetes que no están en package.json?

Resuelto Sergei Basharov asked hace 10 años • 16 respuestas

Supongamos que instalo paquetes de proyecto npm installque buscan package.jsonmódulos para instalar. Después de un tiempo veo que no necesito algún módulo específico y elimino su dependencia de package.json. Luego elimino algunos otros módulos package.jsonporque ya no son necesarios y otros se reemplazan con alternativas.

Ahora quiero limpiar node_modulesla carpeta para que solo los módulos enumerados package.jsonpermanezcan allí y el resto deba irse, algo así como npm clean. Sé que puedo eliminarlos manualmente, pero me gustaría tener una buena funcionalidad de azúcar lista para usar para eso.

Sergei Basharov avatar Jan 15 '14 02:01 Sergei Basharov
Aceptado

Creo que estás buscandonpm prune

npm prune [<name> [<name ...]]

Este comando elimina paquetes "extraños". Si se proporciona un nombre de paquete, solo se eliminan los paquetes que coincidan con uno de los nombres proporcionados.

Los paquetes extraños son paquetes que no figuran en la lista de dependencias del paquete principal.

Consulte los documentos: https://docs.npmjs.com/cli/prune

David Sherret avatar Jan 14 '2014 19:01 David Sherret

Puede eliminar su carpeta node_modules/ y luego reinstalar las dependencias desde package.json.

rm -rf node_modules/
npm install

Esto borraría todos los paquetes instalados en la carpeta actual y solo instalaría las dependencias de package.json. Si las dependencias se han instalado previamente, npm intentará utilizar la versión en caché, evitando descargar la dependencia por segunda vez.

adamduren avatar Jan 14 '2014 19:01 adamduren

Debido a la anidación de carpetas, Windows no puede eliminar la carpeta porque su nombre es demasiado largo. Para solucionar esto, instale RimRaf:

npm install rimraf -g

rimraf node_modules
user3844078 avatar Sep 10 '2015 07:09 user3844078

simple solo ejecuta

rm -r node_modules

de hecho, puedes eliminar cualquier carpeta con esto.

como rm -r AnyFolderWhichIsNotDeletableFromShiftDeleteOrDelete .

simplemente abra gitbash move a la raíz de la carpeta y ejecute este comando

Espero que esto ayude.

Ajay Kotnala avatar Nov 25 '2016 09:11 Ajay Kotnala

Primera instalación global de rimraf

npm install rimraf -g

vaya a la ruta usando cmd donde está su carpeta node_modules y aplique el siguiente comando

rimraf node_modules
Ankit Parmar avatar Jul 23 '2017 20:07 Ankit Parmar