我正在为一个相当大的项目开发一个带有reactjs的前端,该项目有两个主要接口。主站点的前端和管理员的前端。
我应该将它们作为两个不同的项目或者反应中的一个项目来开发。如果我将这些构建为两个独立的项目,我很清楚这意味着我将不得不在两个项目上重复执行大量代码。所以我认为我应该把它视为下面的一个项目。
客户端(项目文件夹)
如果我将其作为一个项目开发,如果它位于一个项目文件夹中,不同的前端如何路由到不同的子域。
答案 0 :(得分:0)
为管理员和公共站点提供共享代码库是可以的。但是你需要为它们生成不同的js / css包。因此,您的公开index.html
包含public.js
和public.css
等内容。管理员使用admin.js
和admin.css
。公共文件包含所有共享功能以及仅在公共站点上使用的内容。管理员同样如此。
实现这种分离可以显着减少文件大小,因为通常管理应用程序包括一些图表,富文本编辑器,CSS框架以及可能影响您的公共站点加载速度的大量其他内容。
要使用您可能使用的webpack实现单独的捆绑包,您需要创建一些独立的入口点。
文档 - https://webpack.github.io/docs/multiple-entry-points.html
此外,您将需要使用不同的react-router设置和redux存储(如果您使用它们)。但是可以分享表示组件和实用程序。