UNPKG

create-iking-admin

Version:

金合技术中台脚手架

47 lines (39 loc) 1.13 kB
/* * @Author: wfl * @LastEditors: wfl * @description: * @updateInfo: * @Date: 2022-08-12 18:42:51 * @LastEditTime: 2022-08-29 14:27:07 */ import type { RouteLocationNormalized, RouteRecordNormalized } from 'vue-router'; import { unref } from 'vue'; export const noop = () => {}; /** * @description: Set ui mount node */ export function getPopupContainer(node?: HTMLElement): HTMLElement { return (node?.parentNode as HTMLElement) ?? document.body; } // dynamic use hook props export function getDynamicProps<T, U>(props: T): Partial<U> { const ret: Recordable = {}; Object.keys(props).map((key) => { ret[key] = unref((props as Recordable)[key]); }); return ret as Partial<U>; } export function getRawRoute(route: RouteLocationNormalized): RouteLocationNormalized { if (!route) return route; const { matched, ...opt } = route; return { ...opt, matched: (matched ? matched.map((item) => ({ meta: item.meta, name: item.name, path: item.path, })) : undefined) as RouteRecordNormalized[], }; }