qiankun icon indicating copy to clipboard operation
qiankun copied to clipboard

如何实现同一个页面手动加载多个微应用

Open freshhu opened this issue 2 years ago • 6 comments

Background

想实现一个页面可以由多个微应用拼凑而成的页面,该如何配置和实现?

Proposal

Describe the solution you'd like, better to provide some pseudo code.

Additional context

Add any other context or screenshots about the feature request here.

freshhu avatar Aug 03 '22 10:08 freshhu

官方demo里面就有一个例子 https://github.com/umijs/qiankun/blob/master/examples/main/multiple.js

gongshun avatar Aug 03 '22 10:08 gongshun

官方demo里面就有一个例子 https://github.com/umijs/qiankun/blob/master/examples/main/multiple.js @gongshun image 看着不像,这个还是只能展示一个微应用。我想要一个首页能够同时展示2个以上的微应用,就是这个页面是由微应用1、微应用2、微应用3 多个微应用组成,并一次性加载出来。

freshhu avatar Aug 03 '22 11:08 freshhu

import { loadMicroApp } from "qiankun";
const app = loadMicroApp(
    {
      name: appName,
      entry: resourceEntry,
      container: appContainer,
      props: appProps,
    },
    { singular: true, sandbox: { experimentalStyleIsolation: true } }
);

直接在你希望加载的地方手动调用这个方法就好了,当然你也要手动管理下unmount之类的,根据你的业务需要

jk4235 avatar Aug 05 '22 02:08 jk4235

@gongshun @jk4235 主要想实现如下图的效果,同时在一个页面上展示:(比如都是vue项目,那么怎么配置路由呢?)

129536626-22a0655c-d836-429a-9f8c-2d4a9ed33ce9

freshhu avatar Aug 05 '22 03:08 freshhu

@gongshun @jk4235 主要想实现如下图的效果,同时在一个页面上展示:(比如都是vue项目,那么怎么配置路由呢?)

https://github.com/gongshun/qiankun-vue-demo/tree/feature/abstract-route

gongshun avatar Aug 05 '22 03:08 gongshun

https://github.com/gongshun/qiankun-vue-demo/tree/feature/abstract-route

谢谢大佬!

freshhu avatar Aug 05 '22 04:08 freshhu

@gongshun @jk4235 主要想实现如下图的效果,同时在一个页面上展示:(比如都是vue项目,那么怎么配置路由呢?)

https://github.com/gongshun/qiankun-vue-demo/tree/feature/abstract-route

如果是多个同名应用呢,能实现吗

yinran100 avatar Apr 07 '23 12:04 yinran100