mirror of https://github.com/vuejs/vitepress
feat(theme): add active status to nav menu group (#820)
Co-authored-by: Kia King Ishii <kia.king.08@gmail.com>pull/837/head
parent
47f1df5a5a
commit
fdb5720acd
@ -1,12 +1,27 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
|
import { useData } from 'vitepress'
|
||||||
import type { DefaultTheme } from 'vitepress/theme'
|
import type { DefaultTheme } from 'vitepress/theme'
|
||||||
|
import { isActive } from '../support/utils'
|
||||||
import VPFlyout from './VPFlyout.vue'
|
import VPFlyout from './VPFlyout.vue'
|
||||||
|
|
||||||
defineProps<{
|
defineProps<{
|
||||||
item: DefaultTheme.NavItemWithChildren
|
item: DefaultTheme.NavItemWithChildren
|
||||||
}>()
|
}>()
|
||||||
|
|
||||||
|
const { page } = useData()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<VPFlyout :button="item.text" :items="item.items" />
|
<VPFlyout
|
||||||
|
:class="{
|
||||||
|
VPNavBarMenuGroup: true,
|
||||||
|
active: isActive(
|
||||||
|
page.relativePath,
|
||||||
|
item.activeMatch,
|
||||||
|
!!item.activeMatch
|
||||||
|
)
|
||||||
|
}"
|
||||||
|
:button="item.text"
|
||||||
|
:items="item.items"
|
||||||
|
/>
|
||||||
</template>
|
</template>
|
||||||
|
Loading…
Reference in new issue