gpt4 book ai didi

reactjs - 在没有 CDN 的微前端包之间共享 react

转载 作者:行者123 更新时间:2023-12-05 06:51:38 30 4
gpt4 key购买 nike

我正在使用带有 Single-Spa 框架的微前端架构构建一个应用。

我有:

  • 根配置 Web 应用:定义应用的布局并将每个微前端作为 NPM 依赖项包含在内
  • N 微前端:加载到根配置应用程序中的 React 应用程序。

因为每个微前端都在使用 React,所以我不想每次都捆绑它。相反,我想让根配置应用程序将 React 指定为依赖项,然后它可以由每个微前端加载。

我已经将 react 和 react-dom 声明为 webpack 外部组件,因此它们没有捆绑在一起,但我认为这只有在我将来自 CDN 的 React 包含在根配置应用程序的 index.html 中时才有效。有没有办法配置 webpack 以便它将 React 包含在根配置中并使其可用于每个微前端?我不能在我的公司使用公共(public) CDN。

谢谢!

最佳答案

"Getting Started: Quick start" guide ,我们介绍了如何添加共享依赖项,该示例具体显示了将 React 和 ReactDOM 添加到导入映射中。

您不应该尝试将 React 捆绑到根配置中,因为通过 Webpack 捆绑到应用程序中的模块是命名空间的,而不是全局共享的。相反,根据您的要求,您可以将这些 React 文件托管在您自己的 CDN 中,甚至可以通过 root-config 在本地提供它们,因为最终会有静态文件。这些文件的加载位置与 SystemJS 无关,只要它可以加载它们即可。这意味着您可以像在本地复制这些文件并从根配置服务器提供它们一样简单,也可以像 setting up your own unpkg server 一样复杂。 .

关于reactjs - 在没有 CDN 的微前端包之间共享 react ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66137561/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com