export type DynamicViewsRecord = Record<string, () => Promise<Recordable>>;



/** 已注册模块的动态页面 */

export const packageViews: DynamicViewsRecord = {};



/**

 * 注册动态路由页面

 * @param getViews 获取该模块下所有页面的方法

 */

export function registerDynamicRouter(getViews: () => DynamicViewsRecord) {

  if (typeof getViews === 'function') {

    let dynamicViews = getViews();

    Object.keys(dynamicViews).forEach((key) => {

      // 处理动态页面的key,使其可以让路由识别

      let newKey = key.replace('./src/views', '../../views');

      packageViews[newKey] = dynamicViews[key];

    });

  }

}