diff --git a/components/menu/src/Menu.tsx b/components/menu/src/Menu.tsx index ed38addfa..f9e8e7ef0 100644 --- a/components/menu/src/Menu.tsx +++ b/components/menu/src/Menu.tsx @@ -226,7 +226,7 @@ export default defineComponent({ const mergedInlineCollapsed = ref(false); watchEffect(() => { - if (props.mode === 'inline' && inlineCollapsed.value) { + if ((props.mode === 'inline' || props.mode === 'vertical') && inlineCollapsed.value) { mergedMode.value = 'vertical'; mergedInlineCollapsed.value = inlineCollapsed.value; } else { diff --git a/components/menu/src/SubMenu.tsx b/components/menu/src/SubMenu.tsx index f51064417..3386a6d74 100644 --- a/components/menu/src/SubMenu.tsx +++ b/components/menu/src/SubMenu.tsx @@ -266,7 +266,12 @@ export default defineComponent({ onVisibleChange={onPopupVisibleChange} v-slots={{ popup: ({ visible }) => ( - + (triggerMode === 'horizontal' ? 'vertical' : triggerMode)), + isRootMenu: false, + }} + > {slots.default?.()}