Почему "npm prune" не удаляет папки из node_modules?
У меня есть package.json
со всеми моими devDependencies
.
Я понял, что если я удалю зависимость и запустим npm prune
, node удалит папку модуля с node_modules
. Это самый простой способ сохранить мою папку node_modules
.
Из docs:
npm чернослив
Удаление посторонних пакетов
Эта команда удаляет "посторонние" пакеты.
Посторонние пакеты - это пакеты, которые не указаны в родительском список зависимостей пакетов.
Однако иногда даже после запуска npm prune
у меня все еще есть папка модуля в node_modules
.
Почему это происходит и каков правильный способ удаления неиспользуемых модулей?
Ответы
Ответ 1
Согласно документация
Если указан флаг --production
, эта команда удалит пакетов, указанных в devDependencies
.
Итак, если вы хотите избавиться от папки модуля в node_modules
, указанной в devDependencies
, вы должны выполнить
npm prune --production
Ответ 2
После запуска:
npm ls
Я вижу:
npm ERR! extraneous: [email protected] /path/to/package
Тогда, когда я сделал:
npm prune
Пакет был удален.