管理/后端和前端作为一个项目或单独的项目



我正在为一个相当大的项目开发一个带有 reactjs 的前端,该项目有两个主要接口。

我应该将它们开发为两个不同的项目还是一个在 reactjs 中开发的项目。 如果我将它们构建为两个单独的项目,我很清楚这意味着我将不得不在两个项目上做很多重复的代码。所以我想我应该把它看作是一个项目,如下所示。

客户端(项目文件夹)

  • 应用/主
  • 应用/管理员

如果我将其开发为一个项目,如果它位于一个项目文件夹中,不同的前端如何路由到不同的子域。

  • example.com - 主前端
  • admin.example.com - 管理前端

可以为管理员和公共网站共享代码库。但是你需要为它们生成不同的js/css包。因此,您的公共index.html包括类似public.jspublic.css.管理员使用admin.jsadmin.css.公共文件包含所有共享功能和仅在公共站点上使用的内容。管理员也是如此。

进行这种分离可以显着减小文件大小,因为通常管理应用程序包括一些图表,富文本编辑器,css框架和大量其他可能会影响公共网站加载速度的内容。

要使用您可能使用的 webpack 实现单独的捆绑包,您需要创建一些独立的入口点

文档 — https://webpack.github.io/docs/multiple-entry-points.html

此外,您将需要使用不同的反应路由器设置和 redux 存储(如果您使用这些)。但是表示组件和实用程序可以共享。

最新更新