Согласовано; при условии, что вы создали package.jsonфайл для своего приложения.
JohnnyHK
9
Помните, что запуск npm installпосле удаления node_modulesкаталога может привести к разным версиям зависимостей, определенных для удаления package.json. Если вам требуются очень конкретные версии зависимостей для вашего приложения, будьте осторожны и изучите npm shrinkwrapили проверьте свой node_modulesкаталог для контроля версий .
кузнец
10
@smithclay Я определил явную версию пакетов в package.json моего приложения, так что должно быть все в порядке, верно?
trusktr
@vadim Я проводил некоторые тесты поведения, npm installи он всегда переустанавливал зависимости и обновлял пакеты до последних версий, как разрешено package.json. Таким образом, удаление node_modulesпапок не требуется, если вы считаете, что они повреждены. Есть ли причина, по которой вы думаете, что ее следует удалить? Однако, если целью является удаление любых посторонних пакетов, вы можете выполнить их npm pruneвместо этого
himanshu
1
@himanshu вы правы, npm installобновляет все модули до состояния package.json. Но вопрос в том, как переустановить все пакеты . Таким образом, они могут быть повреждены или, возможно, потребуется перестроить двоичные части после обновления версии node.js.
Вадим Барышев
96
Правильный путь - выполнить npm update. Это действительно мощная команда, она обновляет отсутствующие пакеты, а также проверяет, можно ли использовать более новую версию уже установленного пакета.
Прочтите Введение в NPM, чтобы понять, что вы можете делать с npm.
Но если нет более новой упаковки, то это ничего не даст, верно? Я пытаюсь принудительно переустановить, даже если пакет уже на последней версии.
trusktr
2
Если пропавших пакетов нет, он проверит, могут ли они использовать последние версии пакетов (включая зависимости пакетов), перечисленные в package.json. Так что, по сути, он будет обновлять пакеты, если это возможно. Но это не будет переустановить. Если вы хотите сделать это с помощью команд, вы можете выполнить npm uninstall <package_name>удаление определенного пакета или выполнить npm uninstallудаление всех пакетов.
himanshu
1
Я попытался сделать только npm uninstallбез указания пакета, но это выдает ошибку.
trusktr
У вас есть файл package.json в папке, где вы его выполнили? Если вы удалите глобальный пакет, вам нужно добавить -g
himanshu
1
Ссылка, которую вы предоставляете, устарела, можете ли вы предоставить новую? (Я нашел это, но я не уверен, что это приемлемо изменить)
Motti
64
Большую часть времени я использую следующую команду для полной переустановки всех узловых модулей (убедитесь, что вы находитесь в папке проекта).
rm -rf node_modules && npm install
Вы также можете запустить npm cache cleanпосле удаления node_modulesпапки, чтобы убедиться, что нет никаких кэшированных зависимостей.
После установки вы можете использовать следующую команду:
reinstall
Единственная разница с удалением node_modulesпапки и созданием вручную npm installзаключается в том, что эта команда автоматически очищает кэш npm. Таким образом, вы можете получить три шага в одной команде.
upd:npx reinstall это способ запустить эту команду без глобальной установки пакета (только для npm5 +)
@ g00glen00b Я отредактировал, так что теперь он содержит полезную информацию без гиперссылок
Роб
@ g00glen00b Это прекрасно; это не делает это кандидатом на удаление. Пожалуйста, смотрите этот пост - В частности, он рассматривает короткие ответы со ссылкой, при условии, что есть некоторая полезная информация (например, название библиотеки), когда гиперссылка удалена
Роб
6
Вы можете сделать это с помощью одной простой команды:
Выполните этот шаг, чтобы переустановить модули узлов и обновить их
работает, даже если папка node_modules не существует. Теперь выполните следующую команду синхронно. Вы также можете использовать «обновление npm», но я думаю, что это предпочтительный способ
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.
если вы согласны с версией ваших зависимостей в файле package.json, не нужно выполнять эти шаги, просто запустите
npm rebuild
может также помочь решить некоторые проблемы с родными зависимостямиnpm update <packageName>
отлично работаетОтветы:
Самый простой способ, который я вижу, это удалить
node_modules
папку и выполнитьnpm install
.источник
package.json
файл для своего приложения.npm install
после удаленияnode_modules
каталога может привести к разным версиям зависимостей, определенных для удаленияpackage.json
. Если вам требуются очень конкретные версии зависимостей для вашего приложения, будьте осторожны и изучитеnpm shrinkwrap
или проверьте свойnode_modules
каталог для контроля версий .npm install
и он всегда переустанавливал зависимости и обновлял пакеты до последних версий, как разрешено package.json. Таким образом, удалениеnode_modules
папок не требуется, если вы считаете, что они повреждены. Есть ли причина, по которой вы думаете, что ее следует удалить? Однако, если целью является удаление любых посторонних пакетов, вы можете выполнить ихnpm prune
вместо этогоnpm install
обновляет все модули до состояния package.json. Но вопрос в том, как переустановить все пакеты . Таким образом, они могут быть повреждены или, возможно, потребуется перестроить двоичные части после обновления версии node.js.Правильный путь - выполнить
npm update
. Это действительно мощная команда, она обновляет отсутствующие пакеты, а также проверяет, можно ли использовать более новую версию уже установленного пакета.Прочтите Введение в NPM, чтобы понять, что вы можете делать с npm.
источник
npm uninstall <package_name>
удаление определенного пакета или выполнитьnpm uninstall
удаление всех пакетов.npm uninstall
без указания пакета, но это выдает ошибку.Большую часть времени я использую следующую команду для полной переустановки всех узловых модулей (убедитесь, что вы находитесь в папке проекта).
Вы также можете запустить
npm cache clean
после удаленияnode_modules
папки, чтобы убедиться, что нет никаких кэшированных зависимостей.источник
npm
обновил команду CLIinstall
и добавил--force
флаг.--force
(Или-f
аргумент) заставитnpm
извлечь удаленные ресурсы , даже если локальная копия существует на диске.Видеть
npm install
источник
Вы можете использовать модуль переустановки, найденный в npm.
После установки вы можете использовать следующую команду:
Единственная разница с удалением
node_modules
папки и созданием вручнуюnpm install
заключается в том, что эта команда автоматически очищает кэш npm. Таким образом, вы можете получить три шага в одной команде.upd:
npx reinstall
это способ запустить эту команду без глобальной установки пакета (только для npm5 +)источник
Вы можете сделать это с помощью одной простой команды:
источник
Для Windows вы можете использовать
который удаляет
node_modules
каталог и выполняетnpm install
затем. Удаление перед установкой гарантирует, что все пакеты будут переустановлены.источник
Выполните этот шаг, чтобы переустановить модули узлов и обновить их
работает, даже если папка node_modules не существует. Теперь выполните следующую команду синхронно. Вы также можете использовать «обновление npm», но я думаю, что это предпочтительный способ
если вы согласны с версией ваших зависимостей в файле package.json, не нужно выполнять эти шаги, просто запустите
источник