Czy istnieje prosty sposób na ponowną instalację wszystkich pakietów, od których zależy moja aplikacja (tzn. Znajdują się one w folderze node_modules aplikacji)?
npm update <packageName>działa świetnie
Czy istnieje prosty sposób na ponowną instalację wszystkich pakietów, od których zależy moja aplikacja (tzn. Znajdują się one w folderze node_modules aplikacji)?
npm update <packageName>działa świetnie
Odpowiedzi:
Najprostszym sposobem, jaki widzę, jest usunięcie node_modulesfolderu i wykonanie npm install.
package.jsonplik dla swojej aplikacji.
npm installpo usunięciu node_moduleskatalogu może doprowadzić package.jsondo rozebrania różnych wersji zależności zdefiniowanych podczas usuwania . Jeśli potrzebujesz bardzo specyficznych wersji zależności dla swojej aplikacji, zachowaj ostrożność i zajrzyj do katalogu npm shrinkwraplub sprawdź w nim kontrolę node_modulesźródła.
npm installi zawsze przywraca zależności i aktualizuje pakiety do najnowszych wersji, na co pozwala pakiet.json. Dlatego usuwanie node_modulesfolderów nie jest potrzebne, chyba że uważasz, że jest uszkodzony. Czy istnieje powód, dla którego uważasz, że należy go usunąć? Jeśli jednak zamierzasz usunąć wszelkie niepotrzebne pakiety, możesz npm prunezamiast tego wykonać
npm installuaktualnia wszystkie moduły do stanu package.json. Ale pytanie brzmi: jak ponownie zainstalować wszystkie pakiety . Mogą więc być uszkodzone lub mogą wymagać odbudowania części binarnych po aktualizacji wersji node.js.
Właściwym sposobem jest wykonanie npm update. To naprawdę potężne polecenie, aktualizuje brakujące pakiety, a także sprawdza, czy można użyć nowszej wersji pakietu już zainstalowanego.
Przeczytaj wprowadzenie do NPM, aby zrozumieć, co możesz zrobić z npm.
npm uninstall <package_name>aby odinstalować określony pakiet lub wykonać, npm uninstallaby odinstalować wszystkie pakiety.
npm uninstallbez podawania pakietu, ale to powoduje błąd.
Przez większość czasu używam następującego polecenia, aby uzyskać pełną ponowną instalację wszystkich modułów węzła (upewnij się, że jesteś w folderze projektu).
rm -rf node_modules && npm install
Możesz także uruchomić npm cache cleanpo usunięciu node_modulesfolderu, aby upewnić się, że nie ma żadnych buforowanych zależności.
npmzaktualizowałem komendę CLI installi dodałem --forceflagę.
npm install --force
Argument --force(lub -f) wymusi npmpobranie zasobów zdalnych, nawet jeśli na dysku istnieje kopia lokalna.
Widzieć npm install
Możesz użyć modułu reinstalacji znalezionego w npm.
Po zainstalowaniu możesz użyć następującego polecenia:
reinstall
Jedyną różnicą przy ręcznym usuwaniu node_modulesfolderów i tworzeniu npm installjest to, że to polecenie automatycznie usuwa pamięć podręczną npm. Tak więc możesz uzyskać trzy kroki w jednym poleceniu.
upd: npx reinstall to sposób na uruchomienie tego polecenia bez globalnej instalacji pakietu (tylko dla npm5 +)
Możesz to zrobić za pomocą jednego prostego polecenia:
npm ci
W systemie Windows możesz użyć
(if exist node_modules rmdir node_modules /q /s) && npm install
który usuwa node_moduleskatalog i wykonuje npm installwtedy. Usunięcie przed instalacją zapewnia, że wszystkie pakiety zostaną ponownie zainstalowane.
Wykonaj ten krok, aby ponownie zainstalować moduły węzłów i zaktualizować je
działa, nawet jeśli folder node_modules nie istnieje. teraz wykonaj następujące polecenie synchronicznie. możesz także użyć „aktualizacji npm”, ale myślę, że wolałby to sposób
npm outdated // not necessary to run this command, but this will show outdated dependencies
npm install -g npm-check-updates // to install the "ncu" package
ncu -u --packageFile=package.json // to update dependencies version in package.json...don't run this command if you don't need to update the version
npm install: will install dependencies in your package.json file.
jeśli nie masz nic przeciwko wersji swoich zależności w pliku package.json, nie musisz wykonywać tych kroków, po prostu uruchom
npm install
npm rebuildmoże również pomóc w rozwiązaniu niektórych problemów z rodzimymi zależnościami