Estoy usando el módulo node_swiz, que a su vez usa el módulo validador.
Quiero hacer cambios en el módulo de validación, pero usé npm install para instalar los módulos / dependencias.
¿Puedo simplemente hacer cambios en el módulo de validación dentro de node_modules, o se volverán a crear las dependencias de node_modules y se obtendrá la última versión cuando publique en heroku o la próxima vez que ejecute npm install?
La estructura se ve así:
myNodeApplication
- node_modules
- swiz
- node_modules
- validator [this is the library I want to edit]
¡Gracias por la ayuda!

/node_modulesy ejecutarlo, ¡npm installentonces todo está bien!Puede utilizar patch-package para realizar y conservar cambios en los módulos de nodo.
Esto se puede hacer primero haciendo cambios en el paquete interno
node_modulesy luego ejecutando el siguiente comando,<package name>siendo el nombre del paquete en el que acaba de realizar los cambios.patch-package luego creará una
patchescarpeta con un archivo dentro, que representará sus cambios. Este archivo se puede enviar a git y los parches se pueden restaurar más tarde ejecutandonpx patch-package(sin argumentos).Paso opcional:
Agregue lo siguiente en la sección de script de su package.json para parchear automáticamente la dependencia cuando ejecute "npm install".
fuente
No quería publicar un módulo nuevo y tampoco quería
npm installsobrescribir mis cambios. Encontré una solución para ambos problemas, pero probablemente sería mejor seguir el consejo de @ Sdedelbrock. Pero si quieres hacerlo, así es como:package.jsonarchivo para eliminar la dependencia que desea editar./node_modulesy mueva la carpeta a algún otro lugar de su repositorio que pueda ser comprometido. Así que ahora/node_modules/dependencyestá en/dependencycden el directorio de dependencia y escribanpm linkcden la raíz del directorio de su proyecto y escribanpm link dependencyEs importante que haga esto fuera de/node_modulesy/dependencySi todo funcionó, ahora debería tener un enlace simbólico creado en formato
/node_modules/dependency. Ahora puede ejecutar su proyecto para ver si funciona.fuente