两只小蚂蚁

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

QianKun 源码分析

QianKun MFE注册

registerMicroApps<T extends ObjectType>(
  apps: Array<RegistrableApp<T>>,
  lifeCycles?: FrameworkLifeCycles<T>,
)

type RegistrableApp<T extends ObjectType> {
  // app name
  name: string;
  // app entry
  entry: Entry;
  loader?: (loading: boolean) => void;
  render: HTMLContentRender; | container: string | HTMLElement;
  activeRule: RegisterApplicationConfig['activeWhen'];
}

//demo
registerMicroApps([
  {
    name: 'app',
    entry: 'http://localhost:8080',
    container: '#container',
    activeRule: '/app',
  },
]);

start();

QianKun 能力分析

乾坤基于Single-SPA进行了封装,在此基础上提供:

  • 基于Html-Entry的方式对微应用进行加载
  • 基于ShadowDom的方式对微应用进行样式和DOM隔离
  • 基于多种Proxy能力代理Window对象提供了微应用运行环境的隔离
  • 通过GlobalState提供了主-微应用之间的通信方式
posted on 2021-12-27 18:30  两只小蚂蚁  阅读(152)  评论(0编辑  收藏  举报