微应用-qiankun+vite+vue3

基座与子应用代码示例(自动加载)

本示例中,基座为Vue3,子应用也是Vue3,由于qiankun不支持Vite构建的项目,这里还要引入

vite-plugin-qiankun 插件

基座(主应用)

加载qiankun依赖 

 npm i qiankun -S

qiankun配置(src/qiankun)

src/qiankun/config.ts

export default {
  subApps: [
    {
      name: 'sub-app', // 子应用名称,跟package.json一致
      entry: 'http://localhost:3001/sub-app/', // 子应用入口,本地环境下指定端口
      container: '#sub-container', // 挂载子应用的dom
      activeRule: '/sub-app', // 路由匹配规则
      props: {} // 主应用与子应用通信传值
    },
  ]
}

 src/qiankun/index.ts

import { registerMicroApps, start } from 'qiankun'
import config from './config'

const { subApps } = config

// 注册子应用
export function registerApps() {
  try {
    registerMicroApps(subApps, {
      beforeLoad: [
        async app => {
          console.log('before load', app)
        }
      ],
      beforeMount: [
        async app => {
          console.log('before mount', app)
        }
      ],
      afterUnmount: [
        async app => {
          console.log('before unmount', app)
        }
      ]
    })
  } catch (err) {
    console.log(err)
  }
}

export function qiankunStart() {
  registerApps()
  // 启动微服务
  start()
}

src/views/sub-app/index.vue

<template>
  <div id="sub-container" class="sub-app-wrap"></div>
</template>

<script setup lang="ts">
import { qiankunStart } from '@/qiankun'
import { onMounted } from 'vue'

onMounted(() => {
  qiankunStart()
})
</script>

<style lang="scss" scoped>
</style>

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值