簡體   English   中英

npm 鏈接,不鏈接 devDependencies

[英]npm link, without linking devDependencies

看來,當我運行npm link ,它將全局安裝該項目,並且似乎用它安裝了 devDependencies

有沒有辦法在沒有 devDependencies 的情況下運行 npm link,也許使用--only=production標志?

npm@4.x或更低版本中

當您在other_module運行npm link ,您將獲得依賴項和 devDependencies 符號鏈接。

--production標志不會改變任何東西,仍然會創建一個指向整個目錄的符號鏈接

npm@5.1.0

他們修好了!

如果您刪除node_modules然后執行npm link --only=production ,它會在符號鏈接之前運行安裝,因此 devDependencies 文件夾確實被排除在外。

npm link目前無法做到這一點。 問題是,如果您只在該依賴項中安裝 prod 依賴項,則可以鏈接它,但您不能再在該依賴項上進行開發(因為缺少 devDependencies)。 反之亦然:如果你安裝了 devDependencies,你就不能再鏈接了。

解決方案: https://github.com/marcj/npm-local-development 中名為 npm-local-development 的包

它基本上與npm link做同樣的事情,但通過設置文件觀察器並在后台自動同步文件更改來解決 devDependency 限制,排除所有 devDependencies/peerDependencies。

  1. 你安裝 npm-local-development: npm i -g npm-local-development
  2. 您在根包中創建名為.links.json文件。
  3. 您將每個包名稱及其本地相對文件夾路徑寫入其中

    { "@shared/core": "../../my-library-repo/packages/core" }

  4. 打開控制台並在該根包中運行npm-local-development 讓它在后台運行。

免責聲明:我是這個免費開源項目的作者。

我使用的解決方法是npm pack然后指向示例中的打包文件

暫無
暫無

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

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