diff --git a/src/client/theme-default/components/VPMenuLink.vue b/src/client/theme-default/components/VPMenuLink.vue index a4cebc10..249b7eee 100644 --- a/src/client/theme-default/components/VPMenuLink.vue +++ b/src/client/theme-default/components/VPMenuLink.vue @@ -1,15 +1,22 @@ @@ -20,11 +27,11 @@ defineOptions({ inheritAttrs: false }) :class="{ active: isActive( page.relativePath, - item.activeMatch || item.link, + item.activeMatch || href, !!item.activeMatch ) }" - :href="item.link" + :href :target="item.target" :rel="item.rel" :no-icon="item.noIcon" diff --git a/src/client/theme-default/components/VPNavBarMenuGroup.vue b/src/client/theme-default/components/VPNavBarMenuGroup.vue index 12e8cf6f..76cd42c5 100644 --- a/src/client/theme-default/components/VPNavBarMenuGroup.vue +++ b/src/client/theme-default/components/VPNavBarMenuGroup.vue @@ -17,7 +17,7 @@ const isChildActive = (navItem: DefaultTheme.NavItem) => { if ('link' in navItem) { return isActive( page.value.relativePath, - navItem.link, + typeof navItem.link === "function" ? navItem.link(page.value) : navItem.link, !!props.item.activeMatch ) } diff --git a/src/client/theme-default/components/VPNavBarMenuLink.vue b/src/client/theme-default/components/VPNavBarMenuLink.vue index 6f504791..e9869e1f 100644 --- a/src/client/theme-default/components/VPNavBarMenuLink.vue +++ b/src/client/theme-default/components/VPNavBarMenuLink.vue @@ -1,14 +1,21 @@