Angularjs Angular.js-我需要设计2个应用程序还是只设计一个?

Angularjs Angular.js-我需要设计2个应用程序还是只设计一个?,angularjs,node.js,Angularjs,Node.js,我用Nginx定义了2个虚拟服务器来处理 主域www.example.com上的营销人员和用户身份验证,以及 用户通过身份验证后,将在子域admin.example.com上启动admin应用程序 server { listen 8080; server_name example.com; root html; location / { i

我用Nginx定义了2个虚拟服务器来处理

主域www.example.com上的营销人员和用户身份验证,以及

用户通过身份验证后,将在子域admin.example.com上启动admin应用程序

        server {
            listen       8080;
            server_name  example.com;
            root html;
            location / {
                index  index.html index.htm;
            }
        server {
            listen       8080;
            server_name  admin.example.local;
            root   html/admin;
            location / {
                index  index.html index.htm;
            }
        }
我想用Angular.js单页应用程序处理营销方面的问题 还有Angular.js多页应用程序的管理功能


可能吗?我应该设计两个应用程序还是只设计一个应用程序?

我认为你不应该拆分它们,因为它们可能需要很多相同的功能/数据。想想看

您不希望必须为一个项目维护两个代码库,也不希望每次API发生更改时都要对其进行两次修补

仔细查看文档并相应地规划您的实现:您可以为管理员提供一个独立的路径,而无需复制任何内容。而且,即使在同一个域上,您也可能会遇到一些奇怪的XHR问题,您必须专门为这些问题编写代码


简而言之,我的答案是:不要拆分它。如果您确实想要admin.domain.com,只需将DNS重定向到domain.com/admin,并在单个代码库中处理即可。接下来,您可以稍微重构代码,以匹配您想要的确切行为。看看这里,你会得到一些启发:

你可以得到带有模块的独立代码

以下是理想情况下您应该如何将其划分为3个独立的项目:

  • 一个通用模块-不使用ng app或angular.bootstrap进行索引。分享是一种虚幻
  • 应用程序模块包含带有ng应用程序和引导模块的index.html
  • 管理模块包含另一个index.html文件和另一个引导模块
  • 然后设置2个构建:

  • 应用程序构建:合并1和2
  • ther管理构建:merginig 1和3

  • 但这可能很难做到。因此,如果您不能真正正确地创建它,那么您也可以将应用程序模块合并到管理构建中的管理模块中。这应该不是问题。

    从我的观点来看,最好是制作两个应用程序,并将它们分开,或者在两者之间共享一些功能。