提交 4ac60e9b authored 作者: lihuihui's avatar lihuihui

优化

上级 bf5f7eda
...@@ -9,6 +9,7 @@ import { useUserStore } from '@/stores/user' ...@@ -9,6 +9,7 @@ import { useUserStore } from '@/stores/user'
import { useMenuStore } from '@/stores/menu' import { useMenuStore } from '@/stores/menu'
const route = useRoute() const route = useRoute()
const router = useRouter()
const userStore = useUserStore() const userStore = useUserStore()
const userInfo = userStore.user const userInfo = userStore.user
...@@ -34,6 +35,18 @@ const logout = async () => { ...@@ -34,6 +35,18 @@ const logout = async () => {
await userStore.logout() await userStore.logout()
location.href = `${import.meta.env.VITE_LOGIN_URL}?rd=${encodeURIComponent(location.origin)}` location.href = `${import.meta.env.VITE_LOGIN_URL}?rd=${encodeURIComponent(location.origin)}`
} }
function isUrl(path: string) {
return /^https?:\/\//.test(path)
}
function handleClick(path: string) {
if (isUrl(path)) {
window.open(path)
} else {
router.push(path)
}
}
</script> </script>
<template> <template>
...@@ -52,7 +65,8 @@ const logout = async () => { ...@@ -52,7 +65,8 @@ const logout = async () => {
:popper-offset="0" :popper-offset="0"
popper-class="sub-menu-popper" popper-class="sub-menu-popper"
v-permission="item.tag" v-permission="item.tag"
v-if="item.children"> v-if="item.children"
>
<template #title> <template #title>
{{ item.name }} {{ item.name }}
</template> </template>
...@@ -60,11 +74,13 @@ const logout = async () => { ...@@ -60,11 +74,13 @@ const logout = async () => {
:index="subitem.path" :index="subitem.path"
v-for="subitem in item.children" v-for="subitem in item.children"
:key="subitem.path" :key="subitem.path"
v-permission="subitem.tag"> v-permission="subitem.tag"
@click="handleClick(subitem.path)"
>
{{ subitem.name }} {{ subitem.name }}
</el-menu-item> </el-menu-item>
</el-sub-menu> </el-sub-menu>
<el-menu-item :index="item.path" v-permission="item.tag" v-else> <el-menu-item :index="item.path" v-permission="item.tag" @click="handleClick(item.path)" v-else>
{{ item.name }} {{ item.name }}
</el-menu-item> </el-menu-item>
</template> </template>
......
...@@ -17,6 +17,10 @@ const studentMenus: IMenuItem[] = [ ...@@ -17,6 +17,10 @@ const studentMenus: IMenuItem[] = [
name: '我的实验', name: '我的实验',
path: '/student/lab' path: '/student/lab'
}, },
{
name: '理论学习',
path: 'https://saas-learn.ezijing.com'
},
{ {
name: '我的大赛', name: '我的大赛',
path: '/student/contest' path: '/student/contest'
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论