|
@@ -7,7 +7,7 @@
|
|
|
>
|
|
|
<div class="innerBox d-flex justify-space-between">
|
|
|
<div>
|
|
|
- <div class="nav-logo" style="cursor: pointer;" @click="handleLogoClick">
|
|
|
+ <div class="nav-logo mr-5 mt-1">
|
|
|
<v-img src="../../assets/logo.png" aspect-ratio="16/9" cover :width="90" style="height: 40px"></v-img>
|
|
|
</div>
|
|
|
<!-- <div class="nav-city">
|
|
@@ -17,12 +17,16 @@
|
|
|
<span class="switchover-city nav-city-selected">[{{ $t('sys.switchCities') }}]</span>
|
|
|
</p>
|
|
|
</div> -->
|
|
|
- <div class="nav">
|
|
|
- <ul>
|
|
|
- <li v-for="(k, listIndex) in list" :key="k.text" :class="{'routeActive': routeActive === listIndex}">
|
|
|
- <a :href="k.path" style="font-size: 15px;" class="aLink">{{ k.text }}</a>
|
|
|
- </li>
|
|
|
- </ul>
|
|
|
+
|
|
|
+ <div class="menuList">
|
|
|
+ <div v-for="val in navList" :key="val.name" class="mr-3">
|
|
|
+ <template v-if="val.children">
|
|
|
+ <defineListPage v-bind="$attrs" :title="val.title" :list="val.children" @emitClick="handleClick"></defineListPage>
|
|
|
+ </template>
|
|
|
+ <template v-else>
|
|
|
+ <span class="cursor-pointer menuList-first-title" :class="{'active-route': routeActive === paths.indexOf(val.path)}" @click="handleClick(val)">{{ val.title }}</span>
|
|
|
+ </template>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
@@ -33,20 +37,19 @@
|
|
|
|
|
|
<!-- 头像用户名 -->
|
|
|
<div class="d-flex align-center color-333" v-if="getToken()">
|
|
|
- <span class="cursor-pointer mr-5" @click="handleSwitch">我要招聘</span>
|
|
|
- <span class="cursor-pointer" :class="{'active-route': routeActive === 6}" @click="router.push({ path: paths[6] })">
|
|
|
+ <span class="cursor-pointer mr-5 commonHover" @click="handleSwitch">我要招聘</span>
|
|
|
+ <span class="cursor-pointer commonHover" :class="{'active-route': routeActive === 6}" @click="router.push({ path: paths[6] })">
|
|
|
{{t('enterprise.account.accountBalances')}}:{{ userAccount?.balance && userAccount?.balance > 0 ? (userAccount?.balance / 100.0).toFixed(2) : 0 }}
|
|
|
</span>
|
|
|
- <span class="mr-3 ml-3 cursor-pointer" :class="{'active-route': routeActive === 7}" @click="router.push({ path: paths[7] })">{{t('resume.goldCoins')}}:{{ userAccount?.point || 0 }}</span>
|
|
|
+ <span class="mr-3 ml-3 cursor-pointer commonHover" :class="{'active-route': routeActive === 7}" @click="router.push({ path: paths[7] })">{{t('resume.goldCoins')}}:{{ userAccount?.point || 0 }}</span>
|
|
|
|
|
|
-
|
|
|
<v-menu open-on-hover>
|
|
|
<template v-slot:activator="{ props }">
|
|
|
<div class="d-flex ml-3 align-center cursor-pointer" :class="{'active-route': routeActive === 5}" v-bind="props" @click="handleToPersonalCenter">
|
|
|
<v-avatar>
|
|
|
<v-img alt="John" :src="getUserAvatar(baseInfo?.avatar, baseInfo?.sex)"></v-img>
|
|
|
</v-avatar>
|
|
|
- <div class="ml-3">
|
|
|
+ <div class="ml-3 commonHover">
|
|
|
{{ baseInfo?.name || userInfo.phone }}
|
|
|
<v-icon :color="routeActive === 5 ? '#008979' : '#333'" size="30">mdi-menu-down</v-icon>
|
|
|
</div>
|
|
@@ -89,7 +92,7 @@
|
|
|
</v-list>
|
|
|
</v-menu> -->
|
|
|
<div class="d-flex align-center" v-if="showBall">
|
|
|
- <message-notification v-if="showBall" :path="paths[3]" :class="{'active-route': routeActive === 3}"></message-notification>
|
|
|
+ <message-notification v-if="showBall" :path="paths[3]" class="commonHover2" :class="{'active-route': routeActive === 3}"></message-notification>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
@@ -117,6 +120,7 @@ import { useRouter } from 'vue-router'; const router = useRouter()
|
|
|
import { getUserBindEnterpriseList, getUserRegisterEnterpriseApply } from '@/api/personal/user'
|
|
|
import MessageNotification from '../message.vue'
|
|
|
import { getUserAvatar } from '@/utils/avatar'
|
|
|
+import defineListPage from '@/views/entrances/navBar/components/defineListPage'
|
|
|
|
|
|
defineOptions({ name: 'personal-navbar' })
|
|
|
|
|
@@ -150,20 +154,38 @@ const paths = [ // 有选中样式-路由列表
|
|
|
'/recruit/personal/personalCenter', // 5
|
|
|
'/recruit/personal/myWallet/myBalance', // 6
|
|
|
'/recruit/personal/myWallet/myIntegral', // 7
|
|
|
- ]
|
|
|
-const list = ref([
|
|
|
- { text: t('common.home'), path: paths[0] },
|
|
|
- { text: t('common.position'), path: paths[1] },
|
|
|
- { text: t('common.company'), path: paths[2] }
|
|
|
-])
|
|
|
+]
|
|
|
+
|
|
|
+const navList = [
|
|
|
+ {
|
|
|
+ title: '直聘',
|
|
|
+ children: [
|
|
|
+ {
|
|
|
+ title: '门墩儿直聘',
|
|
|
+ appList: [
|
|
|
+ [{ title: '职位', path: paths[1] }, { title: '公司', path: paths[2] }]
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ { title: '甄选', path: '/mall' },
|
|
|
+ { title: '猎寻', path: '/headhunting' },
|
|
|
+ { title: '数据' },
|
|
|
+ { title: '火苗儿' },
|
|
|
+ { title: '联合会' },
|
|
|
+ { title: '了解门墩儿' },
|
|
|
+]
|
|
|
+
|
|
|
+const handleClick = (e) => {
|
|
|
+ if (!e.path) return
|
|
|
+ window.open(e.path)
|
|
|
+}
|
|
|
|
|
|
const routeActive = computed(() => {
|
|
|
const index = paths.findIndex(item => item === route.path)
|
|
|
return index
|
|
|
})
|
|
|
|
|
|
-const handleLogoClick = () => { window.open('/entrances') } // 点击logo
|
|
|
-
|
|
|
const show = ref(false)
|
|
|
const radios = ref(null)
|
|
|
const enterpriseList = ref([])
|