首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用多个小应用程序在

用多个小应用程序在
EN

Software Engineering用户
提问于 2016-08-05 05:55:29
回答 2查看 7.2K关注 0票数 19

经过长达3个月的争论和研究,我们公司的前端团队已经得出结论,选择在Redux和Range2之间做出选择(考虑到它更适合我们的问题)。

我们进入了企业应用业务,它目前由许多不同的前端技术(同时拥有整个后端RESTful)组成,我们希望将其全部替换,并拥有一项单一的技术,以使未来的培训和质量控制更加容易。

考虑到我们产品的性质,它是巨大的,而且里面有模块,它们本身是一个不同的领域,可以作为一个独立的应用程序制作,但是产品本身存在于一个单一的URL中。

示例;

让我们把我的产品叫做SuperApp。

作为UI,SuperApp有标准的登录系统和子模块/子产品的导航,因此工作流如下所示。

  • SuperApp
    • 认证用户
    • 忘记密码向导
    • 公共网页无需auth访问
    • 认证用户
      • 导航系统
        • 家庭
          • 副产品1
          • 副产品2
          • 副产品3

代码语言:javascript
复制
        - Profile  ...  ...
        - Groups  ...  ...

请注意,在上述表示中,Sub-product1Sub-product2是两个完全不同的领域,具有完全不同的业务域。

我现在能想到的是,我可以将SuperApp创建为一个只有与自身相关的组件和视图的单个角2项目,而SuperApp还负责加载多个子应用程序;Sub-product1Sub-product2 (同样,不同的角2项目,有自己的package.jsonwebpack配置等)。通过哑组件,充当一个shell,提供顶级路由和占位符来保存这些子应用程序。

一旦在shell中加载了Sub-product1,它就会将自己的路由附加到SuperApp已经登陆的当前路由。

我想要分离的原因是,这些不同的应用程序(目前是使用ExtJS构建的)有专门的团队致力于这方面的工作(我们是一家拥有500+开发人员的公司),所以如果他们有自己的专业项目,他们可以根据自己的喜好管理自己的工具和依赖关系,而无需依赖大父应用程序。

但是,在官方的角度文档中,或者在网络上,我找不到任何地方可以有嵌套的角度应用程序(这样的方式是框架代码是共享的,而只有在应用程序需要的时候,子应用程序的依赖关系才会被完全隔离和加载),或者是否有其他方法来解决这样的问题。

任何指导,甚至链接到任何相关的文章将不胜感激。

EN

回答 2

Software Engineering用户

发布于 2018-10-27 20:12:14

你在描述我从模块里知道的。因此,我将以这样的方式提及is。

我不打算讨论关于缺乏框架知识的角度支持模块的问题。而且,在我看来,你不想要这个。根据我的理解,并且我希望您的后端反映,您希望将所有的东西分割成尽可能小的位(微服务)。

在这种情况下,图表上的每个点都应该是它自己的独立应用程序。他们一定要互相沟通,根据每一个职责组成你所描述的观点。你看到谷歌是如何将网址/工具/系统分开的吗?Gmail不关心这个,因为这不是它的责任。甚至所有工具的滑冰都是核心,而不是位于每一个工具中(你可以在材料设计上看到这一点)。资产存在于每个项目/系统之外。

这样,您就可以获得更高的可重用性和系统的灵活性。虽然在小型团队中,由于复杂性和时间的原因,这是站不住脚的。现在你的工作就是弄清楚你的案子到底在哪里。所有的微型服务和分离,都在一磅或在中间的某个地方。模块,如果可用的话,你可以在每个点里面使用。

票数 2
EN

Software Engineering用户

发布于 2018-12-27 00:14:40

一种选择:您可以“硬链接”(而不是使用SPA链接)到子应用程序,让每个子应用程序共享站点包装器的依赖关系。

票数 1
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/327634

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档