Что выводится в списке пакетов npm?


94

Я запускаю команду как список npm, и я получаю указанный ниже список в качестве своих зависимостей, и я хочу знать, что означает дедупликация . Пожалуйста, дайте мне знать, что это значит.

Пожалуйста, проверьте изображение ниже ... !!!!


4
Это должно помочь docs.npmjs.com/cli/dedupe
Molda

Ответы:


108

dedupedэто сокращение от "дедуплицированный" (дубликаты были удалены). В документации npm dedupeобъясняется, как npmэто делается:

Выполняет поиск в локальном дереве пакетов и пытается упростить общую структуру, перемещая зависимости дальше вверх по дереву, где они могут более эффективно использоваться несколькими зависимыми пакетами.

Другими словами, он проверяет, имеют ли несколько пакетов одинаковые зависимости (то есть одинаковые пакеты и диапазон версий), и «указывает» их на один и тот же пакет.

Указан один и тот же пакет, поэтому его не нужно устанавливать дважды.

Кроме того, он перемещает пакеты «вверх по дереву» (выравнивает дерево). Это имеет смысл, поскольку в противном случае одному пакету пришлось бы искать в node_modulesдругом пакете (что было бы немного беспорядочно) и помогает упростить зависимости.

Вы можете проверить это, так как каждый пакет в вашем графике зависимостей, который говорит deduped, можно найти по крайней мере еще раз на графике, обычно на более высоком уровне.

На опубликованном вами скриншоте content-type@1.0.4есть зависимость от body-parser. Чуть ниже он также указан как прямая зависимость выражения на один уровень выше.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.