#angular #npm #angular7 #package.json
#angular #npm #angular7 #package.json
Вопрос:
При запуске npm audit
в моей консоли я получаю следующий вывод :
[...]
found 0 vulnerabilities in 40256 scanned packages
Почему у меня более 40000 пакетов в моем проекте? Такое количество пакетов кажется мне безумным, поскольку я не использую так много библиотек.
Я пробовал следующее :
- Удаление неиспользуемых пакетов (Jasmine, Karma, …).
- Использование
npm prune
.
Я узнал, что это в основном связано с зависимостями Angular7 :
- При понижении рейтинга до Angular 5 у меня «всего» ~ 7000 пакетов.
- Мой
package.lock.json
файл имеет длину почти 10000 строк, и многие из них являются зависимостями.
Это беспокоит меня по этим причинам :
- Наличие такого количества пакетов может привести к частым проблемам с безопасностью.
- Для запуска
npm install
требуется больше ресурсов и времени, и я хотел бы его еще больше оптимизировать. - У меня много неиспользуемых пакетов, которым здесь нечего делать (например, мне не нужны некоторые присутствующие полизаполнения, такие как Babel, поскольку я не хочу разрабатывать кроссбраузерное решение).
Это плохая идея удалить эти неиспользуемые пакеты?
Почему в недавно созданном проекте Angular 7 так много пакетов?
Как мне удалить неиспользуемые зависимости Angular?
Ответ №1:
Вы определенно можете удалить пакеты, но хорошей идеей было бы сохранить их.
Причина: Мы не будем знать, какой пакет использует какой другой зависимый пакет. Так что лучше не удалять это.
Но не волнуйтесь. Перед развертыванием, как только вы запустите ng build
, он автоматически удалит неиспользуемые пакеты.