2013-10-15 73 views
0

我如何解決每個模塊需要重複模塊的問題?我有3個模塊,它們在它們自己的「node_modules」中有請求模塊,並且每個模塊都有不同的版本。每個模塊的「node_modules」中的重複模塊

也許使用npm install -g,npm只下載一個。

但是,如果我使用這個,對於所有人來說都是一樣的,也許會出現正確使用版本的問題,或者不會。

NPM解決這個問題嗎?在node_modules的全局文件夾中創建diferents文件夾? 謝謝。

+0

它爲什麼重要?絕大多數軟件包都很小,所以不應該在大小上造成任何問題。 –

+0

我可以想出很多方式來做到這一點髒或雜亂或手動,但我很想讀一個正確的答案:D。儘管我看不出值得付出的努力。 – durum

回答

2

NPM有,一個實驗性功能(!):

npm dedupe 

(見npm help dedupe有關說明)

0

這是故宮究竟是如何設計的。

這個想法背後是每個模塊是自包含,這意味着他們不應該依賴更高的依賴性,它需要的一切都在其目錄中。
想象以下場景:

  • A依賴於B,版本1.3.x的範圍
  • ,c取決於B,最低版本2.1.0

如果NPM沒有設計方式是的,處理這種情況並不是一件容易的事。

此外,您不能require()全局模塊。

但是,您可以嘗試通過使用npm dedupe命令來減少模塊的重複 - 它會嘗試爲您簡化複雜的模塊樹。