node js web应用中实现monorepo。"/>
使用Lerna在response和node js web应用中实现monorepo。
我试图建立一个monorepo,其中包括一个react和node js应用程序,所以使用react应用程序创建的frontEnd文件夹和backEnd文件夹,其中包括所有的服务器代码。
我已经做了以下步骤
在全球范围内安装Lerna
创建了一个新的文件夹,并初始化了版本库,在新的文件夹中运行lerna init,创建了2个文件lerna.json、package.json和1个文件夹作为包。
在新的文件夹里运行lerna init,创建了2个文件lerna.json,package.json和1个文件夹作为packages。
在package文件夹里,我运行create-react-app frontEnd,它创建了一个新的react应用程序。
运行mkdir backEnd命令,在package文件夹下创建backEnd文件夹。
现在我的package文件夹由两个文件夹组成,前端和后端。
前端由一个package.json组成,这个package.json是和create-react-app一起的
疑问
我需要从frontEnd文件夹中删除package.json吗?
我如何配置根目录下的lerna.json和package.json。
我如何运行这个应用程序?
我已经搜索过了,但我没有得到使用create-react-app制作一个react-nodejs应用的解决方案。
回答如下:我做了这个任务 此处
我需要从frontEnd文件夹中删除package.json吗?
不,每个项目在 /packages
文件夹中的模块可能有它的依赖关系。安装在根目录下的模块 package.json
安装在所有子项目中。当您运行 lerna bootstrap
它将运行 npm install
在每个项目上。
我如何配置根目录下的lerna.json和package.json。
我如何配置根目录下的lerna.json和package.json。lerna.json
是非常简单的,包含了所有lerna应该管理的项目的配置。
这个 package.json
是用来跟踪你所有项目之间的共享包。例如,你可以有一些 constant-module
在一个简单的fontendbackend中,没有任何共享模块是现实的。
我如何运行应用程序?
当你运行 lerna run start
,Lerna将执行 npm run start
在所有跟踪的项目上。所以你必须知道如何启动你的整个应用程序。
在我的例子中,我实现了 start
只在后端项目中使用,因为它将静态服务于前端文件,我不想只为前端启动另一个webserver。
更多推荐
使用Lerna在response和node js web应用中实现monorepo。
发布评论