我用 single-spa
+ React
搭建微前端。
现在遇到一个可能比较低级的问题:
single-spa 建议所有的应用之间应该是兄弟关系,而不应该是父子嵌套关系。 那么问题来了:
主应用包含 Menu、Header,而我需要在图中的 Content
组件中来加载子应用,我该怎么办?
1
sparkinglemon 2019-11-04 13:06:14 +08:00
iframe,shadow dom,看你需要的兼容性和实际业务需求
|
2
sparkinglemon 2019-11-04 13:07:43 +08:00
content 内部使用 router 拆出去?
|
3
Fawen 2019-11-04 13:21:56 +08:00
content 里面用路由就行了
|
4
dartabe 2019-11-04 13:23:25 +08:00
把 menu 和 content 合起来写子组件里面
|
5
dartabe 2019-11-04 13:25:58 +08:00
错了 可以用这种路由 /content/:id 把 nav1 nav2 nav3 id 传过去 或者用 path 类传一个 state 过去
|
6
howel52 2019-11-04 13:33:25 +08:00
推荐一个基于 single-spa 的上层封装 [qiankun]( https://github.com/umijs/qiankun)
|
7
cl903254852 OP @sparkinglemon 需求就是上面说的。你说的我没怎么明白
|
8
cl903254852 OP @Fawen 实不相瞒,content 里面就是用的路由。现在问题是 content 是用来装子应用的,那子应用的挂载 dom 应该放哪
|
9
cl903254852 OP @howel52 👌 我来看看
|
10
DiamondYuan 2019-11-04 14:17:09 +08:00
@howel52 +1 推荐 qiankun
|
11
howel52 2019-11-04 19:40:58 +08:00
@DiamondYuan 手动狗头
|
12
kuitos 2019-11-18 23:37:37 +08:00
@DiamondYuan +1 推荐 qiankun
|
13
rioshikelong121 2019-12-18 15:47:14 +08:00
我的问题和你类似 我直接把子应用的挂载 DOM 放在主应用渲染出来的 DOM 里面了。
哥们你目前用的是 qiankun 还是 single-spa? |