2016-12-23 53 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的提升选项。 –