Używam modułu node_swiz, który z kolei używa modułu walidatora.
Chcę wprowadzić zmiany w module walidatora, ale użyłem instalacji npm do zainstalowania modułów / zależności.
Czy mogę po prostu wprowadzić zmiany w module walidatora wewnątrz node_modules, czy też zależności node_modules zostaną odtworzone i uzyskana najnowsza wersja, kiedy opublikuję w heroku lub następnym razem uruchomię npm install?
Struktura wygląda następująco:
myNodeApplication
- node_modules
- swiz
- node_modules
- validator [this is the library I want to edit]
Dzięki za pomoc!
/node_modules
i uruchomić,npm install
a wszystko jest w porządku!Możesz użyć pakietu poprawek, aby wprowadzić i utrwalić zmiany w modułach węzła.
Można to zrobić, najpierw wprowadzając zmiany w pakiecie wewnątrz,
node_modules
a następnie uruchamiając następujące polecenie, które<package name>
jest nazwą pakietu, w którym właśnie wprowadzono zmiany.patch-package utworzy
patches
folder z plikiem w środku, reprezentującym twoje zmiany. Ten plik można następnie przekazać do git, a łaty można przywrócić później, uruchamiającnpx patch-package
(bez żadnych argumentów).Opcjonalny krok:
Dodaj poniższy fragment w sekcji skryptu pliku package.json, aby automatycznie załatać zależność podczas wykonywania polecenia „npm install”.
źródło
Nie chciałem publikować nowego modułu i nie chciałem
npm install
też nadpisywać moich zmian. Znalazłem rozwiązanie obu tych problemów, ale prawdopodobnie lepiej byłoby skorzystać z rady @ Sdedelbrock. Ale jeśli chcesz to zrobić, oto jak:package.json
plik, aby usunąć zależność, którą chcesz edytować./node_modules
i przenieś folder w inne miejsce w repozytorium, które można zatwierdzić. Więc teraz/node_modules/dependency
jest o/dependency
cd
do katalogu zależności i wpisznpm link
cd
w katalogu głównym projektu i wpisznpm link dependency
Ważne jest, aby zrobić to poza/node_modules
i/dependency
Jeśli wszystko działało, powinieneś mieć teraz łącze symboliczne utworzone w programie
/node_modules/dependency
. Teraz możesz uruchomić swój projekt, aby sprawdzić, czy działa.źródło