Merge pull request #493 from sumile-ting/fix/collapseSubMenuOverflow
fix: 左侧菜单收起后,组件菜单的子菜单显示不全
This commit is contained in:
commit
ddcf5f4400
|
@ -98,7 +98,7 @@ export default defineComponent({
|
|||
>
|
||||
{{
|
||||
default: () => {
|
||||
const { renderMenuItem } = useRenderMenuItem()
|
||||
const { renderMenuItem } = useRenderMenuItem(menuMode)
|
||||
return renderMenuItem(unref(routers))
|
||||
}
|
||||
}}
|
||||
|
@ -257,4 +257,9 @@ export default defineComponent({
|
|||
}
|
||||
}
|
||||
}
|
||||
@submenu-prefix-cls: ~'@{adminNamespace}-submenu-popper';
|
||||
.@{submenu-prefix-cls}--vertical {
|
||||
overflow-y: auto;
|
||||
max-height: 100%;
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -1,12 +1,17 @@
|
|||
import { ElSubMenu, ElMenuItem } from 'element-plus'
|
||||
import { unref } from 'vue'
|
||||
import { hasOneShowingChild } from '../helper'
|
||||
import { isUrl } from '@/utils/is'
|
||||
import { useRenderMenuTitle } from './useRenderMenuTitle'
|
||||
import { pathResolve } from '@/utils/routerHelper'
|
||||
import { useDesign } from '@/hooks/web/useDesign'
|
||||
|
||||
const { getPrefixCls } = useDesign()
|
||||
const prefixCls = getPrefixCls('submenu')
|
||||
|
||||
const { renderMenuTitle } = useRenderMenuTitle()
|
||||
|
||||
export const useRenderMenuItem = () =>
|
||||
export const useRenderMenuItem = (menuMode) =>
|
||||
// allRouters: AppRouteRecordRaw[] = [],
|
||||
{
|
||||
const renderMenuItem = (routers: AppRouteRecordRaw[], parentPath = '/') => {
|
||||
|
@ -33,7 +38,11 @@ export const useRenderMenuItem = () =>
|
|||
)
|
||||
} else {
|
||||
return (
|
||||
<ElSubMenu index={fullPath}>
|
||||
<ElSubMenu
|
||||
index={fullPath}
|
||||
popper-append-to-body
|
||||
popperClass={unref(menuMode) === 'vertical' ? `${prefixCls}-popper--vertical` : ''}
|
||||
>
|
||||
{{
|
||||
title: () => renderMenuTitle(meta),
|
||||
default: () => renderMenuItem(v.children!, fullPath)
|
||||
|
|
Loading…
Reference in New Issue