umi 的微前端方案是 qiankun。本文通过举例介绍 umi 中怎么用 qiankun 搭建主应用和子应用。
创建主应用
1.新建主工程
1 | mkdir main && cd main |
2.安装 qiankun 插件
1 | yarn add @umijs/plugin-qiankun -D |
创建子应用
回到主工程同级目录
1.新建子工程 micro-app-a
1 | mkdir micro-app-a && cd micro-app-a |
2.安装 qiankun 插件
1
yarn add @umijs/plugin-qiankun -D
3.配置
.umirc.ts
1 | // .umirc.ts |
package.json
1 | ... |
配置主应用
回到主应用
1.配置会用到的子应用: 在主应用目录下新建 config/microApps.js
文件,里面添加如下内容
1 | const apps = [ |
2..umirc.ts配置
1 | import { defineConfig } from 'umi'; |
3.在 pages 下创建 micro-app-a
页面,micro-app-a/index.tsx
内容如下
1 | import React from 'react'; |
4.主应用跳转子应用
1 | import React from 'react'; |
启动
此时分别运行 yarn start
启动主应用和子应用就可以从主应用跳转子应用
打包
这里打包方案是将子应用打包到主应用目录下一起部署,为了方便打包,在主工程下写了个打包脚本 scripts/build.js
1 | const child_process = require('child_process'); |
打包完成后,将主工程下 dist
文件夹拿去部署下就好