2016-12-23 3 views
4

Ich habe ein Projekt, das ein separates Frontend (webpack) und Backend hat (Express/mongodb), die ich möchte die package.json während etwa trennen ist eine gewisse Logik zu teilen/Dienstprogramm-Code zwischen ihnen. Wie kann ich meine Dateistruktur so organisieren, dass ich ihre Abhängigkeiten entsprechend trennen kann?Trennung package.json für Frontend und Backend mit gemeinsamen Code

Gerade jetzt ist dies meine Dateistruktur, die sowohl das Frontend und Backend die gleichen 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 

ich sie leicht in 2 npm Projekte trennen könnte, wenn sie nicht sowohl das lib benötigen tut, aber das würde Ich muss den Code in beide Ordner kopieren. Gibt es einen besseren Weg, dies zu erreichen?

Antwort

1

Am Ende habe ich mein Projekt in einen Monorepo verwandelt und verwende https://lernajs.io/, um sie zu verbinden. Jeder Ordner als separates npm-Projekt haben

Der Nachteil, den ich gefunden habe, ist, dass der Paketinstallationsprozess (npm install) viel länger dauert, da jedes Unterprojekt viel separat installiert werden muss, von denen viele doppelte Pakete enthalten.

+0

Sie können versuchen, die Hebeoption von Lerna zu verwenden. –

Verwandte Themen