UNPKG

mustard-app

Version:

个人前端微应用建设中。。。

74 lines (73 loc) 2.27 kB
import { MustardName, MustardURL, TFunction } from '../typings'; /** * 获取虚拟路由key * @param appName * @returns */ export declare function getLocationNameByAppName(appName: MustardName): string; /** * 根据相对地址和当前页面地址返回具体资源路径 * @param relativePath 相对地址 * @param absolutePath 当前页面地址 * @returns */ export declare function getCompletePath(relativePath: string, absolutePath?: string): string; /** * 请求资源 * @param relativePath 相对地址 * @param absolutePath 当前页面地址 * @returns */ export declare function fetchSource(relativePath: string, absolutePath?: string): Promise<string>; /** * 监听Dom变化 * @param dom 需要监听的dom元素 * @param config 需要监听的范围 e.g 属性变动/子节点变动 * @param callback 监听变动回调函数 */ export declare function mutationObserver(dom: Element, config: MutationObserverInit, callback: MutationCallback): MutationObserver; /** * 处理子应用的dom * 1. 加上子应用标识 appName * 2. 修改ownerDocument,代理到proxydocument * 3. 特殊dom,特殊处理 e.g 1. 远程资源src 2. 动态style处理(实时加入前缀) * @param dom * @param _appName 子应用标识 * @returns */ export declare function handleDom<T extends Element>(dom: T, _appName?: MustardName): T; /** * 处理选择器 * e.g. * 1. head -> mustard-app-head * 2. body -> mustard-app-body * @param selectors */ export declare function handleSelectors(selectors: string): string; /** * 获取相对地址 * 根据子应用的appName,从loaction.search 上读取对应数据 * @param appName * @returns */ export declare function getPath(appName: MustardName): string; /** * 获取地址的URL对象 * @param appName * @param baseUrl * @returns */ export declare function getURL(appName: MustardName, baseUrl: MustardURL): URL; /** * * @param path 子应用地址路径 * @param appName 子应用标识 * @param location // 父应用或基座location * @returns */ export declare function getNewPathToMustard(path: string, appName: MustardName): string; /** * 异步下一微任务运行 * @param fn 待运行的方法 */ export declare function nextTick(fn: TFunction): void;