| | |
| | | import { getAllParentPath } from '/@/router/helper/menuHelper'; |
| | | |
| | | import { useTimeoutFn } from '/@/hooks/core/useTimeout'; |
| | | import { useDebounce } from '/@/hooks/core/useDebounce'; |
| | | import { useDebounceFn } from '@vueuse/core'; |
| | | |
| | | export function useOpenKeys( |
| | | menuState: MenuState, |
| | | menus: Ref<MenuType[]>, |
| | | accordion: Ref<boolean>, |
| | | mixSider: Ref<boolean>, |
| | | collapse: Ref<boolean> |
| | | collapse: Ref<boolean>, |
| | | ) { |
| | | const [debounceSetOpenKeys] = useDebounce(setOpenKeys, 50); |
| | | const debounceSetOpenKeys = useDebounceFn(setOpenKeys, 50); |
| | | async function setOpenKeys(path: string) { |
| | | const native = !mixSider.value; |
| | | const menuList = toRaw(menus.value); |
| | |
| | | menuState.activeSubMenuNames = menuState.openNames; |
| | | }, |
| | | 30, |
| | | native |
| | | native, |
| | | ); |
| | | } |
| | | |