Comments (9)
主子应用 history mode 必须一致
这点如果子应用是云凤蝶的话,倒是没有问题,我们做了特殊支持,follow 了 qiankun 给的主应用 history
子应用大概率要求不能是有路由的系统
这个在云凤蝶也可行,虽然比较奇怪,因为一个云凤蝶站点里面用户会做很多页面,那么这里必然就引入了路由系统,除非用户只能说我只想嵌入某一个云凤蝶的页面,那么我的 runtime 可以把其它的页面都删掉,倒是可以特殊剥掉外层的路由系统,但这也就意味着这个 MircoApp 只能嵌入一个 Page,而且这个 Page 里面云凤蝶的开发者也不要使用云凤蝶的 router api,因为没有云凤蝶的 router 了
from plugins.
除非用户只能说我只想嵌入某一个云凤蝶的页面,那么我的 runtime 可以把其它的页面都删掉,倒是可以特殊剥掉外层的路由系统
对于React应用来说,一个路由下的一个页面只是一个 url => 组件
的映射,url只是一种状态,用户想要的效果是在组件(页面)之间跳转,所以才会去跳转url。这里的url就变成了组件的id而已。
之前umijs-qiankun-plugin 1.0版本, 也是页面级的思路在做(配置对应的url 路径,匹配到了,就挂载子应用)。现在这种2.0思路后,可以是一个小组件,也能挂载,解耦了对url状态的依赖 (👍)
云凤蝶lowcode用起来很爽,但现在云凤蝶还是被router给绑定了,其实用户想要的只是跳转云凤蝶内的组件而已。
会有这样的情况吗?
domain1.com/subpath/ => 云凤蝶报表A
domain2.com/subdir/ => 云凤蝶报表A
domain3.com/thirdparty/ => 云凤蝶报表A
如果用户就是在云凤蝶上的 /components/tab 这个页面下放的是tab组件呢?
感觉可以在中间做一个代理逻辑处理,(location)=> 云凤蝶内应用的id => 云凤蝶组件。云凤蝶应用永远在‘/’ 路径下挂载一个组件容器,路径再自己处理然后映射一下。 主要是传一个自定义的 history
这样子使用 可以传一个函数给云凤蝶,然后不就可以为所欲为了吗?或者在云凤蝶里面判断外面的url来展示不同的页面。
from plugins.
感觉可以在中间做一个代理逻辑处理,(location)=> 云凤蝶内应用的id => 云凤蝶组件。云凤蝶应用永远在‘/’ 路径下挂载一个组件容器,路径再自己处理然后映射一下。 主要是传一个自定义的 history
有一些更极端的场景,比如 /path/a -> [ 云凤蝶报表A、云凤蝶报表B]。
from plugins.
在插件版本0.2.40时,切换子应用时,会渲染一次上次子应用,比如,从app1切换到app2,会先进入一次app2的layout之后,会再次进入到app1的layout
from plugins.
export default {
qiankun: {
master: {
apps: [
{
name: 'microApp1',
entry: '//test.com/app1',
-
base: '/app1',
-
}
mountElementId: 'app1-root' } ]
}
}
请问文档里这样配置是什么意思。
from plugins.
请问能使用splitChunks分割吗?
from plugins.
不同的子应用怎么挂载到不同的 dom 上,用 display 去控制展示不同的子应用,大佬们有 demo 嘛
from plugins.
Uncaught (in promise) TypeError: Failed to fetch 父应用引入子应用后报这个错,
from plugins.
一个应用既能做主应用又能做子应用吗?
from plugins.
Related Issues (20)
- 主应用跳转到子应用时,出现空白页
- Uncaught Error: single-spa minified message #13
- 建议plugin-qiankun和qiankun保持同步,怎加自定义fetch请求 HOT 1
- @umijs/plugin-openapi 插件umi4报错api.addMiddewares is not a function
- 主应用路由是 hash 模式的话,子应用使用 history 模式是不是无法接入?
- 由于本项目的依赖有点旧,让项目安装依赖的时候出现少量 deprecated
- 希望@umijs/plugin-openapi增加serversPath参数
- 使用@ant-design/pro-* 编译了超多的var变量 HOT 1
- 升级 react 18, qiankun 报错Unhandled Rejection (TypeError): m.createRoot is not a function
- useModel 不能在ReactDom.render 内使用
- openapi 配置中 customFunctionName 和 customClassName 该如何使用
- 二级菜单可以设置默认展开么,没有找到相关配置
- antd pro 项目使用@umijs/plugin-qiankun改造成微前端,如何在主应用的二级菜单中指向子应用的某个非首页路由呢?
- antd pro 4.0.0 在哪里添加qiankun lifecycle函数呢?
- 使用initial-state等插件报错
- layout插件中,如何使用onCollapse
- qiankun父应用进入微应用,微应用的路由一直作用在夫应用上 HOT 2
- 希望 openapi 插件传递所有 hook 参数
- qiankun 在子应用页面刷新浏览器后在切换到另一个子应用页面,报错 Wrapper element for xxx is not existed! HOT 1
- Feature Request Server Side Render Routes HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from plugins.