¿Existe una opción para instalar un paquete npm sin dependencias?

¿Existe una opción para instalar un paquete npm sin dependencias?

Estoy intentando modificar un paquete npm con múltiples dependencias. Como tal, npm install -g .lleva mucho tiempo ejecutarlo. ¿Tengo otras opciones además de eliminar las dependencias de packages.json?

Respuesta1

--no-opcionalLa opción ahora está implementada de acuerdo con esta documentación.https://docs.npmjs.com/cli/install:

The --no-optional argument will prevent optional dependencies from being installed.

Respuesta2

Si lo está desarrollando node_moduleusted mismo, no pierda el tiempo con npm installs, en su lugar utilice npm link.

En resumen, crea un enlace simbólico a la carpeta de su módulo en una carpeta global propiedad de npm y luego, en la carpeta de su aplicación, le pide a npm que use esa carpeta vinculada simbólica.

Esto hace que los cambios que realice en la carpeta del módulo se reflejen inmediatamente en su aplicación.

Estos son los pasos principales (copiados del tutorial vinculado a continuación, asegúrese de leer el tutorial para conocer los problemas importantes):

  1. CD asrc/my_module
  2. Correr " npm link". Esto crea un enlace simbólico desde una carpeta global a la src/my_modulecarpeta.
  3. CD asrc/my_app
  4. Correr npm link my_module. Esto vincula node_modules/my_moduleen este proyecto en particular a la carpeta global, de modo que requirelas llamadas que buscan my_moduleterminen cargándolo desde su carpeta de desarrollo src/my_module.

Vea este tutorial:http://justjs.com/posts/npm-link-developing-your-own-npm-modules- without-tears Y los documentos oficiales para npm link:https://docs.npmjs.com/cli/link

Respuesta3

Esta función se solicitó en 2010, pero desafortunadamente fue ignorada y cerrada:https://github.com/npm/npm/issues/340

Probé un montón de opciones y finalmente encontré una solución bastante simple: cambiar el nombre de package.json a otra cosa antes de realizar la instalación de npm, luego revertirlo después de que finalice la instalación:

mv package.json package.bak
npm install <package_name> --no-save
mv package.bak package.json

Respuesta4

Mirando a través delos documentosNo parece tener una opción más allá del --no-optionalcambio.

No probado/no confirmado

Esta sesión de preguntas y respuestas de SO se titula:npm installInstala todas las dependencias de mi proyecto a través de la red, incluso si ya están instaladas o disponibles desde el cachéParecería implicar que hay un --skip-installedinterruptor. Pero los documentos no hacen ninguna referencia a este cambio.

información relacionada