当前位置:首页 > React

umi是如何暴露react

2026-02-12 10:03:04React

umi 暴露 React 的方法

umi 是基于 React 的框架,默认情况下 React 是作为项目依赖的一部分。如果需要全局暴露 React(例如在微前端场景中),可以通过以下方式实现:

修改配置暴露 React

config/config.ts.umirc.ts 中配置 externals,将 React 和 ReactDOM 设置为外部依赖:

export default {
  externals: {
    react: 'window.React',
    'react-dom': 'window.ReactDOM',
  },
};

通过 HTML 模板注入 CDN

umi是如何暴露react

src/pages/document.ejs 或公共 HTML 模板中添加 CDN 链接,确保 React 和 ReactDOM 在全局可用:

<script crossorigin src="https://unpkg.com/react@18/umd/react.production.min.js"></script>
<script crossorigin src="https://unpkg.com/react-dom@18/umd/react-dom.production.min.js"></script>

验证暴露是否成功

在项目中直接使用 window.Reactwindow.ReactDOM,确保能正常访问。例如在控制台打印:

umi是如何暴露react

console.log(window.React);

动态加载场景的处理

如果项目需要动态加载 React(如按需加载),可以通过 runtimePublicPath 配置结合 CDN 动态加载:

export default {
  runtimePublicPath: true,
};

注意事项

  • 暴露 React 后,需确保项目中不再打包 React,否则会导致重复加载。
  • 微前端场景下,主应用和子应用需统一 React 版本,避免冲突。
  • 生产环境建议使用稳定的 CDN 地址,避免版本不一致问题。

标签: umireact
分享给朋友:

相关文章

react如何启动

react如何启动

启动 React 项目的步骤 确保已安装 Node.js React 需要 Node.js 环境运行,建议安装最新稳定版(LTS)。可通过以下命令检查是否已安装: node -v npm -v…

如何监控react性能

如何监控react性能

使用 React Profiler API React 16.5 及以上版本内置了 Profiler API,可直接测量组件渲染时间。通过 <React.Profiler> 包裹目标组件,…

如何读react源码

如何读react源码

理解React源码的结构 React源码托管在GitHub上,主要分为几个核心模块:react、react-dom、react-reconciler等。react包包含核心API和组件逻辑,react…

react路由如何配置

react路由如何配置

React 路由配置方法 安装 React Router 使用 npm 或 yarn 安装 React Router 的 DOM 版本: npm install react-router-dom #…

react如何创建项目

react如何创建项目

使用 Create React App 创建项目 Create React App (CRA) 是官方推荐的 React 项目脚手架工具,适合快速初始化一个现代化的 React 项目。 安装 C…

如何封装表单react

如何封装表单react

封装 React 表单的方法 封装 React 表单可以通过创建可复用的表单组件或自定义 Hook 来实现。以下是几种常见的方法: 使用受控组件封装表单 通过状态管理表单数据,将表单字段的值与 Re…