From c5f7e4b081df68e4f983c3b59c6fbd294f803072 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=9D=E5=85=88=E7=91=9E?= <1490493387@qq.com> Date: Fri, 24 May 2024 18:17:01 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20:sparkles:=20=E4=BE=A7=E8=BE=B9?= =?UTF-8?q?=E5=8A=A8=E6=80=81=E8=B7=AF=E7=94=B1=E8=8F=9C=E5=8D=95=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mock/menu.mock.ts | 1 + src/components/AppLink/index.vue | 25 +++++++++++-------- .../Sidebar/components/SidebarMenuItem.vue | 8 +++++- src/views/demo/other.vue | 16 ++++++++++++ 4 files changed, 39 insertions(+), 11 deletions(-) create mode 100644 src/views/demo/other.vue diff --git a/mock/menu.mock.ts b/mock/menu.mock.ts index 7ef2d146..0fde33df 100644 --- a/mock/menu.mock.ts +++ b/mock/menu.mock.ts @@ -362,6 +362,7 @@ export default defineMock([ icon: "", hidden: false, roles: ["ADMIN"], + params: { type: "1" }, }, }, ], diff --git a/src/components/AppLink/index.vue b/src/components/AppLink/index.vue index c863d44e..43bbb308 100644 --- a/src/components/AppLink/index.vue +++ b/src/components/AppLink/index.vue @@ -1,5 +1,5 @@ @@ -14,20 +14,25 @@ import { isExternal } from "@/utils/index"; const props = defineProps({ to: { - type: String, + type: Object, required: true, }, }); -const isExternalLink = computed(() => isExternal(props.to)); - -const type = computed(() => { - return isExternalLink.value ? "a" : "router-link"; +const isExternalLink = computed(() => { + return isExternal(props.to.path || ""); }); -const linkProps = (to: string) => { - return isExternalLink.value - ? { href: to, target: "_blank", rel: "noopener noreferrer" } - : { to }; +const linkType = computed(() => (isExternalLink.value ? "a" : "router-link")); + +const linkProps = (to: any) => { + if (isExternalLink.value) { + return { + href: to.path, + target: "_blank", + rel: "noopener noreferrer", + }; + } + return { to: to }; }; diff --git a/src/layout/components/Sidebar/components/SidebarMenuItem.vue b/src/layout/components/Sidebar/components/SidebarMenuItem.vue index cba90fc2..625b02e9 100644 --- a/src/layout/components/Sidebar/components/SidebarMenuItem.vue +++ b/src/layout/components/Sidebar/components/SidebarMenuItem.vue @@ -8,7 +8,13 @@ !item.meta?.alwaysShow " > - + +
路由参数:{{ query }}
+ + + + +