当前位置:首页 > 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 native

如何评价react native

React Native 的优势 跨平台开发效率高:基于 JavaScript 和 React 语法,可同时开发 iOS 和 Android 应用,减少重复代码量。性能接近原生:通过原生组件渲染,性能…

如何生成react代码

如何生成react代码

使用 Create React App 生成项目 安装 Node.js 后,通过命令行工具运行以下命令创建新项目: npx create-react-app my-app cd my-app npm…

react如何销毁

react如何销毁

React 组件销毁的机制 在 React 中,组件的销毁通常由 React 的生命周期管理。当组件从 DOM 中移除时,React 会自动触发销毁相关的生命周期方法。以下是关键点: 组件的销毁通常…

react 如何调试

react 如何调试

调试 React 应用的方法 使用 React Developer Tools 安装 Chrome 或 Firefox 的 React Developer Tools 扩展,可以检查组件树、状态和 p…

react如何下载

react如何下载

安装 React 的步骤 通过 npm 或 yarn 安装 React,确保已安装 Node.js(版本建议 ≥ 14.0.0)。打开终端或命令行工具,运行以下命令: npx create-reac…

react项目如何

react项目如何

创建React项目 使用create-react-app工具快速初始化项目。确保已安装Node.js(建议版本≥12.0.0),运行以下命令生成新项目: npx create-react-app m…