簡體   English   中英

Javascript:package.json 依賴項是否包含在構建中,如果它沒有在任何地方導入?

[英]Javascript: is package.json dependency included in build, if it's not imported anywhere?

在項目中,package.json 文件中列出了一些依賴項 package (npm install [some-name] --save),但未在我的任何模塊文件中導入的代碼源代碼。 這個 package 是否會包含在最終版本中(例如匯總輸出)?

據我了解,未導入的 es6 模塊甚至無法提供任何副作用,因此捆綁程序(例如 rollup、webpack)在依賴圖中沒有它。 正因為如此,bundler 甚至不知道它的存在。 所以,如果我是正確的,那么 package 不包含在捆綁包中。 但是,在這種情況下,對於使用任何捆綁器的項目,如果捆綁器使用自己的邏輯決定(當它遵循“導入/導出”語句時),那么在 package.json 中分離“依賴項”和“開發依賴項”的原因是什么? output 中包含什么?

我認為您是對的,捆綁程序在您捆綁時不會包含它。 該代碼是應刪除的死代碼。

但是我認為(如果我錯了,請糾正我)當您的圖書館消費者執行npm install時,他們將不得不下載package.json中的所有內容以解決其依賴關系。 至少這是我的推理。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM