Uruchamiam polecenie jako lista npm i otrzymuję poniższą listę jako moje zależności i chcę wiedzieć, jakie jest znaczenie deduped . Proszę, daj mi znać, co to oznacza.
dedupedjest skrótem od „deduplikowany” (duplikaty zostały usunięte). Dokumentacja npm dedupewyjaśnia, jak npmto zrobić:
Przeszukuje lokalne drzewo pakietów i próbuje uprościć ogólną strukturę, przenosząc zależności w górę drzewa, gdzie mogą być efektywniej współużytkowane przez wiele pakietów zależnych.
Innymi słowy, sprawdza, czy wiele pakietów ma te same zależności (czyli te same pakiety i zakres wersji) i „wskazuje” je na ten sam pakiet.
Odwołuje się do tego samego pakietu, więc nie trzeba go instalować dwukrotnie.
Ponadto przenosi pakiety „w górę drzewa” (spłaszcza drzewo). Ma to sens, ponieważ w przeciwnym razie jeden pakiet musiałby szukać w node_modulesinnym pakiecie (co byłoby trochę bałaganiarskie) i pomaga uprościć zależności.
Możesz to sprawdzić, ponieważ każdy pakiet na twoim wykresie zależności, który mówi deduped, można znaleźć co najmniej jeszcze raz na wykresie, zwykle na wyższym poziomie.
Na opublikowanym zrzucie ekranu [email protected]jest zależność body-parser. Nieco dalej, jest również wymieniony jako bezpośrednia zależność ekspresji o jeden poziom wyżej.
Odpowiedzi:
deduped
jest skrótem od „deduplikowany” (duplikaty zostały usunięte). Dokumentacjanpm dedupe
wyjaśnia, jaknpm
to zrobić:Innymi słowy, sprawdza, czy wiele pakietów ma te same zależności (czyli te same pakiety i zakres wersji) i „wskazuje” je na ten sam pakiet.
Odwołuje się do tego samego pakietu, więc nie trzeba go instalować dwukrotnie.
Ponadto przenosi pakiety „w górę drzewa” (spłaszcza drzewo). Ma to sens, ponieważ w przeciwnym razie jeden pakiet musiałby szukać w
node_modules
innym pakiecie (co byłoby trochę bałaganiarskie) i pomaga uprościć zależności.Możesz to sprawdzić, ponieważ każdy pakiet na twoim wykresie zależności, który mówi
deduped
, można znaleźć co najmniej jeszcze raz na wykresie, zwykle na wyższym poziomie.Na opublikowanym zrzucie ekranu
[email protected]
jest zależnośćbody-parser
. Nieco dalej, jest również wymieniony jako bezpośrednia zależność ekspresji o jeden poziom wyżej.źródło