Estoy desarrollando un paquete npm. Llamémoslo my-library . Publico este paquete en un repositorio privado de npm que se extrae de muchos de mis proyectos. ¿Cómo puedo desarrollar rápidamente el código en my-library sin tener que publicar una nueva versión de my-library cada vez que hago un pequeño cambio?
Tome el siguiente flujo de trabajo, por ejemplo:
my-library . El cambio aún está en desarrollo, por lo que no quiero publicarlo para todos mis consumidores todavía, pero sí quiero probarlo localmente.npm pack para crear un archivo .tgz local.my-consumer , actualizo el package.json para hacer referencia a este archivo .tgz local. "my-library": "file:../some/path/my-package.tgz"npm install en my-consumer y mi paquete local no está instalado y puedo probar mi aplicación. Ahora, aparentemente no hay nada malo con los pasos mencionados anteriormente, pero digamos que estoy iterando muy rápidamente en my-library y quiero hacer y probar cambios muy rápidamente. ¿Hay alguna manera de que pueda hacer que el proceso anterior sea más rápido? Ejecutar el paquete y la instalación para cada pequeño cambio lleva tiempo y es mucho más lento que si se tratara de una recarga en caliente. ¿Puedo configurar mi paquete.json en my-consumer para usar una versión en caché de my-library que no está en la carpeta node_modules y omitir algunos de los pasos anteriores? Tampoco quiero que esto introduzca ningún problema de dependencia.
Estoy usando el enlace npm/yarm para eso. le permite vincular su biblioteca a su proyecto y, por lo tanto, tener el código más actualizado sin publicar ni instalar.
Básicamente la sintaxis es:
cd /path/to/lib yarn link cd /path/to/project yarn link myLibName Eche un vistazo a los documentos de yarn link .