• qiankun项目搭建手册


    1. 项目结构

    创建一个web-group的文件夹,进入该文件夹创建主项目和子项目。

    • 主项目(必须): main-service(main-service为主项目名称)
    • 子项目:sub1-service、sub2-service、…

    2. 项目搭建及插件安装

    2.1 项目搭建

    项目要求:vue3+vite+ts+qiankun

    项目搭建命令: npm create vite@latest 项目名 -- --template vue-ts

    • 主项目中,安装 qiankunnpm install qiankun

    • 子项目中,安装 vite-plugin-qiankunnpm install vite-plugin-qiankun

    2.2 插件安装

    在主项目中.根据需要安装 vue-routerpiniapinia-plugin-persistedstate等插件。

    npm i vue-router pinia pinia-plugin-persistedstate

    3. main.ts文件配置

    3.1 主项目的 main.ts 文件配置

    import {
        createApp } from 'vue'
    import './style.css'
    import {
        registerMicroApps } from 'qiankun'
    import router from './router'
    import pinia from './store'
    import App from './App.vue'
    const app = createApp(App)
    app.use(router).use(pinia).mount('#app')
    registerMicroApps([
      {
       
        name: 'sub1-service', // 必选,微应用的名称,微应用之间必须确保唯一。
        entry: '//localhost:3001', // 必选,微应用的入口。
        container: '#subApp',
        // activeRule: '/sub-app/app1', // 必选,微应用的激活规则。
        activeRule: (location: Location) => {
       
          return location.pathname.startsWith('/sub-app/app1')
        },
        loader: (loading: boolean) => {
        // 可选,loading 状态发生变化时会调用的方法。
          console.log(loading, '===loading');
        },
        props: {
       
          router,
        }
      },
      {
       
        name: 'sub2-service', // 必选,微应用的名称,微应用之间必须确保唯一。
        entry: '//localhost:3002', // 必选,微应用的入口。
        container: '#subApp',
        activeRule: (location: Location) => location.pathname.startsWith('/sub-app/app2'), // 必选,微应用的激活规则。
        loader: (loading: boolean) => {
        // 可选,loading 状态发生变化时会调用的方法。
          console.log(loading, '===loading');
        },
        props: {
       
        }
      },
    ])
    // 设置默认路由
    // setDefaultMountApp("/sub1")
    // 开启qiankun
    // start()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49

    3.2 子项目的 main.ts 文件配置

    imp
    • 相关阅读:
      SpringCloudGateway集成SpringDoc CORS问题
      1.本地备份数据库(windows)- navicat 定时备份数据库
      在k8s1.25版本中为何出现这种情况
      如何在页面中制作悬浮发布按钮弹窗
      主成分分析
      J5_数据源及分层开发
      clickonce 发布的winform 如何CA认证?
      数据结构--6.0最短路径
      web前端-html自定义列表
      深入解析:微软Edge浏览器的防钓鱼与恶意软件保护机制
    • 原文地址:https://blog.csdn.net/weixin_42566993/article/details/133991387