所以我使用npm鏈接一次開發多個模塊,但它導致我與貓鼬連接的問題,因爲它不使用相同的實例。Npm鏈接和共享模塊實例
如果我直接將我的第二個模塊複製到我的主應用程序的node_modules文件夾中,則連接按預期工作,如果我通過github安裝,則相同,問題是如果我執行npm鏈接,第二個模塊具有自己的貓鼬實例,而不是使用主應用程序中的現有連接。
有沒有人知道這方面的任何解決方法?
所以我使用npm鏈接一次開發多個模塊,但它導致我與貓鼬連接的問題,因爲它不使用相同的實例。Npm鏈接和共享模塊實例
如果我直接將我的第二個模塊複製到我的主應用程序的node_modules文件夾中,則連接按預期工作,如果我通過github安裝,則相同,問題是如果我執行npm鏈接,第二個模塊具有自己的貓鼬實例,而不是使用主應用程序中的現有連接。
有沒有人知道這方面的任何解決方法?
所以並不是完美的解決方案,但我意識到的是,因爲如果不存在的節點會經常檢查父目錄的node_modules
文件夾的當前目錄的node_modules
我把我所有的模塊在同一個工作目錄,故宮安裝了貓鼬和任何該目錄中的其他共享實例模塊。
它的工作很好,但需要NPM安裝的父目錄和模塊內刪除node_modules
文件夾
請參閱下面的結構,我用
|---workspace
|-----node_modules -> install mongoose or other shared instance modules
|-----mainApp
|------node_modules -> delete mongoose or other shared instance modules
|-----moduleOne
|------node_modules -> delete mongoose or other shared instance modules
|-----moduleTwo
|------node_modules -> delete mongoose or other shared instance modules
的手動步驟,如果您正在使用peerDependencies
你可以試試這個:https://www.npmjs.com/package/npm-dedupe-symlinked-peer-deps
基本上它會把所有的共享依賴鏈接到主包提供的鏈接上。