qiankun里面的应用如何解决主应用和子应用通信,子应用之间跳转的代码
时间: 2024-03-20 18:41:12 浏览: 172
qiankun 提供了以下几种方式用于实现主应用和子应用之间通信:
1. props:主应用可以通过 props 把数据传输给子应用,子应用可以通过 props 接收主应用传递过来的数据。
2. emit:主应用可以通过 emit 触发一个自定义事件,并传递数据给子应用,子应用可以通过 on 监听该事件并接收数据。
3. onGlobalStateChange:主应用可以通过 onGlobalStateChange 方法注册一个全局状态改变的监听器,子应用可以通过 setGlobalState 方法向主应用发送全局状态改变的事件,并传递数据。
对于子应用之间的跳转,qiankun 中推荐的方式是使用 history.pushState 或者 location.href 来进行页面跳转。具体代码实现如下:
```javascript
// 子应用之间跳转
window.history.pushState({}, '', '/sub-app1'); // 使用 pushState 进行跳转
window.location.href = '/sub-app2'; // 使用 href 进行跳转
```
需要注意的是,跳转时需要保证子应用的路由规则是正确的,并且不能跨域。
阅读全文