我正在从事一个MERN项目,该项目将包括git-submodules(这是一个回购中的一个回购)。
如果我们只谈论子模块内部的Node代码,这很简单。但问题是,我们希望在子模块中同时包含node(express)代码和React.js代码,以便我们可以一起对其进行版本控制。因此,我的问题是,我能以某种方式告诉反应或webpack,我将在后端文件夹中有反应代码并且该应用程序正常运行吗?
我的结构看起来像这样:
Project
├── backend
│ └── modules
│ ├── module1(git-submodule)
│ │ ├── backend.code
│ │ └── react.code
│ └── module2(git-submodule)
│ ├── backend.code
│ └── react.code
└── frontend
│ ├── App.js
│ ├── index.js
│ ├── public
| └── modules
│
...
other good stuff
当前我所拥有的是一个脚本(WIP:虽然仍然有问题),该脚本将侦听后端/模块和前端/模块中文件的更改,并同步文件以使它们完全相同。同步发生时,webpack会选择并重启开发服务器。通过这种同步,我在dev env中没有任何问题,在prod中也没有任何问题。
但是在我看来,这似乎是一种hack。你怎么看?有没有更好的办法?也许告诉Webpack文件在后端?这种事情有某种最佳实践吗?
注意:并非每次都将所有模块都包含在部署中。我们可能只使用module1进行部署,而另一次使用module1和module2进行部署。同样在开发中,我的朋友可能在模块3上工作,而我在模块4上工作。
我们只需要此前端包含通用组件,而与特定模块无关。