构建微前端应用可以使用Vite作为主应用的构建工具,Vue 3作为主应用和子应用的框架,Qiankun作为微前端框架。
以下是使用Vite+Vue 3+Qiankun构建微前端应用的步骤:
- 安装 Vite
npm init vite@latest
- 创建主应用
cd 主应用目录
npm install
npm run dev
- 创建子应用
cd 子应用目录
npm install
npm run dev
- 安装 Qiankun
npm install qiankun
- 在主应用中配置微前端路由
import { createApp } from 'vue';
import { createRouter, createWebHistory } from 'vue-router';
import { createApp } from 'qiankun';
import App from './App.vue';
const routes = [
// 主应用路由
];
const router = createRouter({
history: createWebHistory(),
routes,
});
const app = createApp(App);
app.use(router);
// 导出 bootstrap、mount、unmount 函数给 qiankun 使用
export function bootstrap() {
// 主应用初始化逻辑
}
export function mount() {
app.mount('#app');
}
export function unmount() {
app.unmount();
}
- 在主应用中注册子应用
import { registerMicroApps, start } from 'qiankun';
registerMicroApps([
// 子应用配置
]);
start();
- 在子应用中配置微前端路由
import { createApp } from 'vue';
import { createRouter, createWebHistory } from 'vue-router';
import App from './App.vue';
const routes = [
// 子应用路由
];
const router = createRouter({
history: createWebHistory(),
routes,
});
const app = createApp(App);
app.use(router);
app.mount('#app');
- 在子应用中导出生命周期钩子函数
export function bootstrap() {
// 子应用初始化逻辑
}
export function mount() {
// 子应用挂载逻辑
}
export function unmount() {
// 子应用卸载逻辑
}
- 在主应用注册子应用
import { registerMicroApps, start } from 'qiankun';
import { createApp } from './main';
const app = createApp();
registerMicroApps([
{
name: '子应用名称',
entry: '子应用入口',
container: '#子应用容器',
activeRule: '/子应用路由规则',
props: {
// 传递给子应用的自定义参数
},
},
]);
start();
以上是使用Vite+Vue 3+Qiankun构建微前端应用的基本步骤,具体的配置和使用方式可以根据实际需求进行调整。