当前位置: 首页 > news >正文

【前端打怪升级日志之微前端框架篇】微前端qiankun框架子应用间跳转方法

参考链接
qiankun官网:微应用之间如何跳转?

1.主应用、子应用路由都是hash模式

   主应用根据 hash 来判断微应用,无需考虑该问题

2.主应用根据path判断子应用

方法实现适用条件参数传递存在问题
a标签跳转<a href="/toA"></a>页面重新刷新,原来的状态丢失,用户体验不好
h5提供的history.pushState()方法

history.pushState(state, title[, url])

详见:history.pushState()

微应用的路由模式为histroy

传参:通过state状态对象

取参:history.state

不够优雅和友好

通过props调主应用的路由实例,主应用再去匹配分发到子应用路由在子应用注册时将主应用的路由实例对象传过去,子应用挂载到全局,用主应用的router 跳转。router传参和取参
  • 通过 js 跳转,跳转的链接无法使用浏览器自带的右键菜单(如:Chrome 自带的链接右键菜单)

  • 多层嵌套子应用是否会出问题?

single-spa提供的navigatorToUrl方法
// 1. 在qiankun.js文件中通过Vue提供的provide选项为所有子应用引入singleSpa依赖
function render(props = {}) {const {singleSpa,} = props;instance = new Vue({provide: {singleSpa,},render: h => h(App),}).$mount(container ? container.querySelector('#app') : '#app');
}// 2. 在子应用中调用this.singleSpa.navigateToUrl(`${url}?params`)进行页面跳转并通过URL传参,实例如下:function jumpToOthers(params){this.singleSpa.navigateToUrl(url);
},

http://www.lryc.cn/news/177099.html

相关文章:

  • C语言中的typedef struct用法
  • 司徒理财:9.27黄金原油日内多空走势行情操作建议
  • C++设计模式(Design Patterns)
  • vue点击按钮收缩菜单
  • Vue 防止忘记的命令
  • APACHE NIFI学习之—RouteOnContent
  • 【C语言】【结构体的内存对齐】计算结构体内存大小,有图解
  • Intel 700 800系网卡升级支持WOL UEFI PXE方法
  • vue3 - 使用 xlsx 库将数据导出到 Excel 文件
  • 机器学习,深度学习
  • 【性能测试】jmeter连接数据库jdbc
  • 蓝桥等考Python组别二级007
  • Java如何解决浮点数计算不精确问题
  • 一图读懂「五度易链」企业创新服务解决方案,打造卓越营商环境!
  • 软件工程 第一次随堂练习
  • 在 Esp32 摄像头上实现边缘脉冲 FOMO 物体检测
  • crypto:RSA
  • APP产品经理岗位的具体内容(合集)
  • java 入门-使用eclipse、javaFX、SceneBuilder进行图形界面开发
  • 集度汽车(武汉java)一面
  • 虹科分享 | 为工业机器人解绑,IO-Link wireless无线通讯技术可实现更加轻量灵活的机器人协作
  • 【PickerView案例10-国旗选择界面02 Objective-C预言】
  • 面试打底稿⑤ 项目一的第一部分
  • PSINS工具箱学习(三)让AI解释PSINS中的各种卡尔曼滤波函数
  • 多边形碰撞检测算法
  • 【C/C++笔试练习】——printf在使用%的注意事项、for循环语句的三个条件、运算符优先级、删除公共字符
  • Linux部署elk日志监控系统
  • LINUX -SQL笔记(自学用)
  • 【Spark】win10配置IDEA、saprk、hadoop和scala
  • MQTT 协议概要