Después npm init
puedo agregar dependencias en mi package.json usando esto:
npm install package --save
Y digo, quiero uninstall
el paquete y lo hago haciendo:
npm uninstall package
pero también quiero que mi package.json se actualice en consecuencia sin que tenga que ir manualmente al archivo y eliminar esa línea.
De los documentos de npm dice:
Es estrictamente aditivo, por lo que no elimina opciones de su package.json sin una buena razón para hacerlo.
Entonces, solo quería saber si esto es posible.
Respuestas:
Usa la misma
--save
bandera. Si instaló una dependencia con:puede desinstalarlo, con package.json actualizándose, usando:
El indicador 'guardar' le dice a npm que actualice package.json en función de la operación que acaba de hacer.
fuente
--save-dev
lugar de--save
.dependencies
sección del archivo package.json, mientras que --save-dev guardará en ladevDependencies
secciónnpm i <package_name> -S
para agregar a sudependencies
lista onpm i <package_name> -D
para agregar a sudev-dependencies
. Se aplica la misma bandera para la eliminación connpm rm <package_name> -S
onpm rm <package_name> -D
npm help
todas las banderas y sus equivalentes taquigráficos. (nada instalado con -S o --save y ser desinstalado usando ya sea, también, la NGP no los ve como diferentes Justo "escribir menos" para -S.)En mi caso --save no borró la entrada de package.json, el comando sugerido por ionic-check Creo que si la desinstalación sale con algún error, package.json no se actualizará, en cuyo caso solo tiene una opción para cambiar manualmente package.json, esto es tedioso, pero supongo que es la única forma
ACTUALIZAR
cuando desinstala un paquete que depende de otro paquete que está activo, en cuyo caso la desinstalación puede fallar con errores / advertencias, el método seguro es a través del siguiente gráfico de dependencia, no estoy seguro de si hay alguna herramienta disponible, una herramienta útil para tales operaciones, advertencia los mensajes son bastante engañosos, aunque "debes instalar las dependencias entre pares ..." no tiene ningún sentido cuando estamos desinstalando un paquete
fuente
dependencies
lista,uninstall --save
debería eliminarlo, independientemente de si algo más depende de ello. NPM utiliza un aplanamiento de dependencias bastante inteligente, por lo que si tiene X en su lista de dependencias (explícitamente) y desinstala X --save, se eliminará. Sin embargo, recuerde que hay varias listas de dependencia, y--save
no es el mismo que--save-dev
,--save-prod
o--save-optional
. También sí: siuninstall
conduce a errores, NPM se detiene en ese error. No intenta continuar porque ya no puede garantizar la corrección.