Czy jest jakieś krótkie polecenie przenoszenia modułu z devDependencies
do dependencies
w package.json?
Zawsze to robię:
npm uninstall <module_name> --save-dev
npm install <module_name> --save
Czy istnieje krótsze podejście do tego?
npm
package.json
Emad Emami
źródło
źródło
npm i module-example -D
będzie również działał, aby przejść od prod do dev, a takżenpm i module-example -P
przejść od dev do prod zależnościyarn remove <module_name>
a następnie ponownie dodać ją do devDependencies za pomocąyarn add <module_name> --dev
W przędzy:
Przenieś moduł z
devDependencies
dodependencies
:Przenieś moduł z
dependencies
dodevDependencies
:Jak wspomniano w komentarzach, polecenie faktycznie usuwa moduł i ponownie instaluje go w nowym miejscu.
źródło
dependencies
dodevDependencies
bez usuwania i ponownego dodawania?&&
z&
.Jeśli Twój projekt nie ma jeszcze pliku blokującego ani pliku powłoki, możesz po prostu przenieść odpowiednią linię w pliku
package.json
.(Nie polecam używania plików blokujących)
źródło
Problem z używaniem poleceń
npm
lubyarn
polega na tym, że istnieje szansa, że ponownie dodawana wersja jest inną wersją niż ta, która jest obecnie używana. Jeśli tego właśnie chcesz - zarówno posunięcia, jak i ulepszenia - skorzystaj z zaakceptowanej odpowiedzi.Jeśli nie, po prostu edytuj ręcznie,
package.json
aby przenieść linię zdevDependencies
obiektu dodependencies
obiektu (w razie potrzeby utwórz ją). Możesz też iść w innym kierunku.Plik blokady nie zawiera żadnych informacji o tym, czy rzeczy są zależne od prod lub dev, więc nie trzeba go aktualizować.Możesz wykonaćnpm
/yarn install
później, aby naprawić wszelkie flagi w plikach blokujących.źródło
dependencies
sekcja najwyższego poziomupackage-lock.json
, każdy wpis może miećdev
flagę wskazującą, czy jest to zależność dev, czy zależność przechodnia. Zobacz docs.npmjs.com/files/package-lock.json#dev "Jeśli [dev jest] true, to ta zależność jest albo zależnością programistyczną TYLKO modułu najwyższego poziomu, albo zależnością przechodnią jednego. Jest to fałsz dla zależności, które są zarówno zależnością rozwojową najwyższego poziomu, jak i zależnością przechodnią zależności nierozwojowej najwyższego poziomu. "Problem z używaniem instalacji npm polega na tym, że otrzymujesz zaktualizowane wersje. Dla mnie zadziałało:
npm install
Dzięki temu wszystkie wersje pozostały nienaruszone.
źródło