// /**
|
// * qiankun配置
|
// */
|
// import { registerMicroApps, setDefaultMountApp, start, runAfterFirstMounted, addGlobalUncaughtErrorHandler } from 'qiankun';
|
// import { apps } from './apps';
|
// import { getProps, initGlState } from './state';
|
//
|
// /**
|
// * 重构apps
|
// */
|
// function filterApps() {
|
// apps.forEach((item) => {
|
// //主应用需要传递给微应用的数据。
|
// item.props = getProps();
|
// //微应用触发的路由规则
|
// // @ts-ignore
|
// item.activeRule = genActiveRule('/' + item.activeRule);
|
// });
|
// return apps;
|
// }
|
//
|
// /**
|
// * 路由监听
|
// * @param {*} routerPrefix 前缀
|
// */
|
// function genActiveRule(routerPrefix) {
|
// return (location) => location.pathname.startsWith(routerPrefix);
|
// }
|
//
|
// /**
|
// * 微应用注册
|
// */
|
// function registerApps() {
|
// const _apps = filterApps();
|
// registerMicroApps(_apps, {
|
// beforeLoad: [
|
// // @ts-ignore
|
// (loadApp) => {
|
// console.log('before load', loadApp);
|
// },
|
// ],
|
// beforeMount: [
|
// // @ts-ignore
|
// (mountApp) => {
|
// console.log('before mount', mountApp);
|
// },
|
// ],
|
// afterMount: [
|
// // @ts-ignore
|
// (mountApp) => {
|
// console.log('before mount', mountApp);
|
// },
|
// ],
|
// afterUnmount: [
|
// // @ts-ignore
|
// (unloadApp) => {
|
// console.log('after unload', unloadApp);
|
// },
|
// ],
|
// });
|
// // 设置默认子应用,与 genActiveRule中的参数保持一致
|
// // setDefaultMountApp();
|
// // 第一个微应用 mount 后需要调用的方法,比如开启一些监控或者埋点脚本。
|
// runAfterFirstMounted(() => console.log('开启监控'));
|
// // 添加全局的未捕获异常处理器。
|
// addGlobalUncaughtErrorHandler((event) => console.log(event));
|
// // 定义全局状态
|
// initGlState();
|
// //启动qiankun
|
// start({});
|
// }
|
//
|
// export default registerApps;
|