9

哪个是微前端开发的最佳方法/框架?

我有超过 5 个基于 angular、react 和 vue 的应用程序,并希望在单个 UI 上显示所有 5 个应用程序。我们有许多微前端框架,如单一 spa、piral、moisaic 项目、Podium 等等。现在市场上有售。需要一张清晰的图片来帮助我使用任何框架来实现它。

微服务#前端开发

4

4 回答 4

9

这一切都取决于。

显然,我对Piral有偏见,但为了让 Piral 高效,您需要检查以下要点中的一些(越多越好):

  • [ ] 您想要一个应用程序外壳(出于技术原因,例如,提供共享依赖项和/或出于其他原因,例如共享/集中管理的设计)
  • [ ] 你对 React 有明显的倾向(即,你有很多不同的框架,但你的大多数应用程序都是用 React 编写的)
  • [ ] 你需要在组件中有组件(例如,来自微前端 A 的组件应该在来自微前端 B 的页面中使用)
  • [ ] 您的应用程序是“动态的”/具有类似“工具”(或应用程序)的特征;no-JS 不是必需的
  • [ ] 您想动态启用/禁用模块(例如,某些用户应该只看到微前端 A,而不是 B)
  • [ ] 你希望拥有丰富的工具支持,例如,在构建新模块时——TypeScript 支持也应该是一流的
  • [ ] 延迟加载(不仅是完整的微前端,还包括页面等单个组件)应该是可能的
  • [ ] 通过不同模块的通信永远不是直接的,而是间接的(即,如果微前端 A 存在,但微前端 B 不存在,您的系统将永远不会中断)

你提到的其他人也有类似的名单。

希望有帮助!

于 2020-01-09T13:59:53.107 回答
0

我认为 Web 组件可以解决您的问题。您将 react/angluar/vue/whatever 封装在自定义元素中,并通过属性和事件相互通信

但要小心,并非所有框架都能很好地使用自定义元素 - https://custom-elements-everywhere.com/

于 2020-01-09T08:31:48.583 回答
0
  1. 我相信 Web 组件(自定义元素)可以帮助您。
  2. 定制的内置元素继承自基本的 HTML 元素,这些元素能够独立运行
  3. 将您的任何 javascript 框架捆绑到单个捆绑的 JS 文件中,并将其包装在自定义元素中(其框架独立)
  4. 使用自定义事件跨 MFE 共享数据

你可以在这里找到一个很好的例子 - https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements

于 2021-09-25T08:19:46.970 回答
-2

首先,让我们弄清楚为什么要使用微前端?

  • 您当前前端的复杂业务逻辑?
  • 分布式团队?
  • 重构您的遗留系统?
  • 还有其他原因吗?

我们将使用微前端,因为我们有分布式系统,并且希望在客户需要在日常工作中使用不同的 Web 服务时为他们提供一致的体验。

我们使用 React 来构建我们的微前端服务,因为很容易管理那些遵循我们的材料设计的组件,必须有一些团队或某人来做和维护整体架构,比如样式、通用组件和实践。

有关详细信息,我们主要关注这篇很棒的文章

我们仍在进行中,希望能对此进行更多讨论。

于 2020-07-08T12:45:56.390 回答