node.js - react nodejs项目中的多个package.json文件
问题描述
我是 react 新手,正在尝试创建一个使用 react、node 和 express 的项目。自己设置正确反应有很多问题,我决定使用 create-react-app。
我在网上找到了一堆教程,其中很多似乎建议将前端和后端分离到不同的目录中,从而产生两个 package.json。
所以项目结构看起来像这样:
Root
|
------client
| |
| -------package.json with front end dependencies
|
package.json with the back end dependencies
客户端目录是使用“npm init react-app”创建的,还包含具有 react-scripts 的 package.json。目前,如果我在客户端目录中使用命令“npm run build”,它会在根文件夹中创建一个没有后端文件的构建,如果我在根文件夹中使用“npm run build”,它不起作用,因为我没有该 package.json 中的 create-react-app 脚本。
我的主要问题是,如果我有两个 package.json,并且像这样拆分前端和后端是否是正常/最佳实践,我将如何构建我的项目?
任何建议将不胜感激。
解决方案
这种文件夹结构是最常用的结构之一。您实际上是在分离前端和后端,这将导致可扩展的架构。
要从一个命令构建项目,您需要安装一个依赖项concurrently
。它将一次启用多个命令。然后更改您的 root package.json
。
下面是一个例子package.json
:
"scripts" : {
"build-client": "npm run build --prefix <FRONTEND_FOLDER NAME>",
"build": "<YOUR SERVER BUILD COMMAND>",
"build-project" : "concurrently \"npm run build\" \"npm run build-client\""
}
希望能帮助到你!!!
推荐阅读
- json - 将 JSON 发送到 Django 后端
- teradata - 如何通过 teradata 中的 bteq 导入从 csv 文件中导入记录,如果某些列有“,”作为文件中的值?
- python - Python套接字服务器登录系统不起作用
- html - 如何在angular js中进行基本的拖放
- vue.js - 子组件使用父组件数据重定向
- node.js - 只能使用 wget localhost 访问的端口
- python - Salt自定义颗粒和Python版本
- java - 使用并行流从 java 列表中获取 Pojo,而不使用任何类型的索引
- spring-boot - java.lang.NoClassDefFoundError: org/springframework/util/unit/DataSize 同时运行 spring boot 项目
- python - 使用颜色图和单个 alpha 值的散点图