Skip to content

Commit 4a0ffdd

Browse files
committed
优化导航菜单
1 parent 49cdde2 commit 4a0ffdd

File tree

2 files changed

+5
-19
lines changed

2 files changed

+5
-19
lines changed

src/layouts/components/Menu/item.vue

+4-9
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,6 @@ const isItemActive = computed(() => {
2929
return isActived.value && (!props.subMenu || rootMenu.isMenuPopup)
3030
})
3131
32-
// 缩进样式
33-
const indentStyle = computed(() => {
34-
return !rootMenu.isMenuPopup
35-
? `padding-left: ${20 * (props.level ?? 0)}px`
36-
: ''
37-
})
38-
3932
defineExpose({
4033
ref: itemRef,
4134
})
@@ -68,11 +61,13 @@ defineExpose({
6861
}"
6962
>
7063
<div
71-
class="inline-flex flex-1 items-center justify-center gap-[12px]" :class="{
64+
class="inline-flex flex-1 items-center justify-center gap-[12px] pl-[calc(var(--indent-level)*20px)]" :class="{
7265
'flex-col': rootMenu.isMenuPopup && level === 0 && rootMenu.props.mode === 'vertical',
7366
'gap-1!': rootMenu.isMenuPopup && level === 0 && rootMenu.props.showCollapseName,
7467
'w-full': rootMenu.isMenuPopup && level === 0 && rootMenu.props.showCollapseName && rootMenu.props.mode === 'vertical',
75-
}" :style="indentStyle"
68+
}" :style="{
69+
'--indent-level': !rootMenu.isMenuPopup ? props.level ?? 0 : 0,
70+
}"
7671
>
7772
<FaIcon v-if="props.item.meta?.icon" :name="props.item.meta.icon" class="menu-item-container-icon size-5 transition-transform group-hover-scale-120" />
7873
<span

src/layouts/components/Menu/sub.vue

+1-10
Original file line numberDiff line numberDiff line change
@@ -102,16 +102,7 @@ const transitionClass = computed(() => {
102102
})
103103
104104
const hasChildren = computed(() => {
105-
let flag = true
106-
if (props.menu.children) {
107-
if (props.menu.children.every((item: any) => item.meta?.menu === false)) {
108-
flag = false
109-
}
110-
}
111-
else {
112-
flag = false
113-
}
114-
return flag
105+
return props.menu.children?.some((item: any) => item.meta?.menu !== false) ?? false
115106
})
116107
117108
function handleClick() {

0 commit comments

Comments
 (0)