Skip to content
On this page

无界对子应用注入了$wujie对象,可以通过$wujie或者window.$wujie获取

$wujie

  • 类型:

    typescript
    {
      bus: EventBus;
      shadowRoot?: ShadowRoot;
      props?: { [key: string]: any };
      location?: Object;
    }
    

$wujie.bus

bus

$wujie.shadowRoot

子应用的渲染容器shadow DOM

$wujie.props

  • 类型:{ [key: string]: any }

主应用注入的数据

$wujie.location

  • 类型:Object

  • 由于子应用的location.host拿到的是主应用的host,无界提供了一个正确的location挂载到挂载到$wujie

  • 当采用vite编译框架时,由于script的标签typemodule,所以无法采用闭包的方式将 location 劫持代理,子应用所有采用window.location.host的代码需要统一修改成$wujie.location.host

  • 当子应用发生降级时,由于proxy无法正常工作导致location无法代理,子应用所有采用window.location.host的代码需要统一修改成$wujie.location.host

  • 当采用非vite编译框架时,proxy代理了window.location,子应用代码无需做任何更改

Released the MIT License.