2016-12-23 79 views
4

我有一個具有一個單獨的前端(的WebPack)和後端(表達/ mongodb的),其餘想單獨package.json而爲約共享某些邏輯的一個項目/它們之間的工具代碼。如何組織我的文件結構,以便我可以適當地分離它們的依賴關係。分離爲前端和後端的package.json與共享代碼

現在這是我的文件結構,無論是前端和後端共享相同的node_modules

app 
| 
| - frontend 
| | - index.js 
| | - src 
| 
| - backend 
| | - index.js 
| | - models 
| | - api 
| | - statics (webpack builds into here) 
| 
| - lib 
| | - logic here (may require npm dependency) 
| 
|- package.json 
|- webpack.config.js 

我可以輕鬆地將它們分成2個NPM項目,如果他們不都需要lib目錄,但這會實質上意味着我必須將代碼複製到兩個文件夾。有沒有更好的方法來實現這一目標?

回答

1

我最終將我的項目變成monorepo並使用https://lernajs.io/來連接它們。將每個文件夾作爲單獨的npm項目。

我發現的缺點是軟件包安裝過程(npm install)需要更長的時間,因爲每個子項目都要單獨安裝,其中許多包含重複的軟件包。

+0

您可以嘗試使用lerna的提升選項。 –