Npm paketleri listesinde tekilleştirilen nedir?


94

Komutu npm listesi olarak çalıştırıyorum ve belirtilen listenin altına bağımlılıklarım olarak geliyorum ve tekilleştirmenin anlamını öğrenmek istiyorum . Lütfen bunun anlamını bana bildirin.

Lütfen aşağıdaki görüntüyü kontrol edin ... !!!!


Yanıtlar:


108

deduped"tekilleştirilen" ifadesinin kısaltmasıdır (kopyalar kaldırılmıştır). Belgeler npm dedupebunun nasıl npmolduğunu açıklar :

Yerel paket ağacını arar ve bağımlılıkları birden çok bağımlı paket tarafından daha etkili bir şekilde paylaşılabilecekleri ağacın daha ilerisine taşıyarak genel yapıyı basitleştirmeye çalışır.

Başka bir deyişle, birden çok paketin aynı bağımlılıklara (aynı paketler ve sürüm aralığı anlamında) sahip olup olmadığına bakar ve bunları aynı pakete "işaret eder".

Aynı pakete referans verildiğinden iki kez yüklenmesi gerekmez.

Ayrıca paketleri "ağacın yukarısına" taşır (ağacı düzleştirir). Aksi takdirde bir paketin başka bir paketin içine bakması gerekeceği node_modules(ki bu biraz dağınık olurdu) ve bağımlılıkları basitleştirmeye yardımcı olacağı için bu tamamen mantıklıdır .

Bunu, bağımlılık grafiğinizdeki her paketin grafikte dedupeden az bir kez daha bulunabileceğini söylediği için, genellikle daha yüksek bir düzeyde doğrulayabilirsiniz .

Gönderdiğiniz ekran görüntüsünde content-type@1.0.4bir bağımlılık var body-parser. Biraz daha aşağıda, aynı zamanda bir seviye daha yüksek eksprese doğrudan bağımlılık olarak listelenmiştir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.