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?
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?
Odpowiedzi:
Tak! przenieść moduł z devDependencies
do dependencies
:
npm install <module_name> --save-prod
Jeśli chcesz zrobić coś odwrotnego (tj. Przenieść moduł z dependencies
do devDependencies
), po prostu zrób:
npm install <module_name> --save-dev
lub skrótowo:
npm i <module_name> -D
shorthand to move from devDependencies
to dependencies
(prod):
npm i <module_name> -P
npm i module-example -D
będzie również działał, aby przejść od prod do dev, a także npm i module-example -P
przejść od dev do prod zależności
yarn 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
do dependencies
:
yarn remove <module_name> --dev && yarn add <module_name>
Przenieś moduł z dependencies
do devDependencies
:
yarn remove <module_name> && yarn add <module_name> --dev
Jak wspomniano w komentarzach, polecenie faktycznie usuwa moduł i ponownie instaluje go w nowym miejscu.
dependencies
do devDependencies
bez usuwania i ponownego dodawania?
&&
z &
.
Problem z używaniem poleceń npm
lub yarn
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ę z devDependencies
obiektu do dependencies
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.
dependencies
sekcja najwyższego poziomu package-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.