forked from TALL/check-work
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
268 lines
6.1 KiB
268 lines
6.1 KiB
<template>
|
|
<div class="white d-flex flex-row flex-nowrap px-10 align-center">
|
|
<img
|
|
@click="jumUrl('/',0)"
|
|
alt
|
|
class="logo-img"
|
|
src="@/assets/logo.png"
|
|
style="cursor: pointer"
|
|
/>
|
|
<div class="flex-1 ml-8">
|
|
<a-dropdown
|
|
:class="activeItem === a ? 'list-down-active' : ''"
|
|
:disabled="item.children.length > 0 ? false : true"
|
|
:key="a"
|
|
class="list-down"
|
|
v-for="(item, a) in list"
|
|
>
|
|
<a @click="jumUrl(item.url,a)" class="ant-dropdown-link">
|
|
{{ item.name }}
|
|
<a-icon type="down" v-show="item.children.length > 0" />
|
|
</a>
|
|
<a-menu slot="overlay">
|
|
<a-menu-item
|
|
:key="b"
|
|
class="px-6 py-3"
|
|
style="text-align: center"
|
|
v-for="(con, b) in item.children"
|
|
>
|
|
<a @click="jumUrl(con.url,a)">{{ con.title }}</a>
|
|
</a-menu-item>
|
|
</a-menu>
|
|
</a-dropdown>
|
|
</div>
|
|
<div class="d-flex flex-nowrap align-center">
|
|
<a-icon class="icon-head pointer icon-head-right" type="search" />
|
|
<a-tooltip placement="bottom">
|
|
<template slot="title">
|
|
<span>点击查看购物车!</span>
|
|
</template>
|
|
<a-icon
|
|
@click="$router.push('/Cart')"
|
|
class="baseColor icon-head icon-head-right pointer"
|
|
type="shopping-cart"
|
|
/>
|
|
</a-tooltip>
|
|
<router-link tag="span" to="/login" v-if="!nickName">
|
|
<a-icon class="icon-head pointer" style="right: 50px" type="user" />
|
|
</router-link>
|
|
<div class="icon-head" v-else>{{ nickName }}</div>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
import { mapState, mapMutations } from 'vuex';
|
|
export default {
|
|
data() {
|
|
return {
|
|
str: '这是头部导航',
|
|
activeItem: 0,
|
|
list: [
|
|
{
|
|
name: '关于我们',
|
|
url: '/About/Introduce',
|
|
children: [
|
|
{
|
|
title: '公司介绍',
|
|
url: '/About/Introduce',
|
|
},
|
|
{
|
|
title: '组织机构',
|
|
url: '/About/Organ',
|
|
},
|
|
{
|
|
title: '合作伙伴',
|
|
url: '/About/Partner',
|
|
},
|
|
{
|
|
title: '衍生企业',
|
|
url: '/About/SpinOffs',
|
|
},
|
|
],
|
|
},
|
|
{
|
|
name: '创新政策',
|
|
children: [],
|
|
url: '/Policy',
|
|
},
|
|
{
|
|
name: '创新平台',
|
|
children: [
|
|
{
|
|
title: '协同创新中心',
|
|
url: '/NewPlatform/NewCore',
|
|
},
|
|
{
|
|
title: '创新资源平台',
|
|
url: '/NewPlatform/News',
|
|
},
|
|
{
|
|
title: '创新服务',
|
|
url: '/NewPlatform/NewService',
|
|
},
|
|
],
|
|
url: '/NewPlatform/NewCore',
|
|
},
|
|
{
|
|
name: '孵化平台',
|
|
url: '/IncubationPlatform/MakerSpace',
|
|
children: [
|
|
{
|
|
title: '众创空间',
|
|
url: '/IncubationPlatform/MakerSpace',
|
|
},
|
|
{
|
|
title: '创业服务',
|
|
url: '/IncubationPlatform/Services',
|
|
},
|
|
{
|
|
title: '产品展示',
|
|
url: '/IncubationPlatform/Products',
|
|
},
|
|
],
|
|
},
|
|
{
|
|
name: '产业平台',
|
|
children: [
|
|
{
|
|
title: '产业创新联盟',
|
|
url: '/Industry/Union',
|
|
},
|
|
{
|
|
title: '产业服务',
|
|
url: '/Industry/Serve',
|
|
},
|
|
{
|
|
title: '衍生企业',
|
|
url: '/Industry/Enterprise',
|
|
},
|
|
],
|
|
url: '/Industry/Union',
|
|
},
|
|
{
|
|
name: '知识平台',
|
|
children: [],
|
|
url: '/Knowledge',
|
|
},
|
|
{
|
|
name: '活动公告',
|
|
children: [],
|
|
url: '/Activity',
|
|
},
|
|
{
|
|
name: '创新挑战',
|
|
children: [
|
|
{
|
|
title: '需求征集',
|
|
url: '/Challenge/Solicitation',
|
|
},
|
|
{
|
|
title: '项目发布',
|
|
url: '/Challenge/Release',
|
|
},
|
|
{
|
|
title: '结果公告',
|
|
url: '/Challenge/Notice',
|
|
},
|
|
],
|
|
url: '/Challenge/Solicitation',
|
|
},
|
|
{
|
|
name: '交流社区',
|
|
children: [],
|
|
url: '/Community',
|
|
},
|
|
{
|
|
name: '联系我们',
|
|
children: [],
|
|
url: '/ContactUs',
|
|
},
|
|
],
|
|
};
|
|
},
|
|
|
|
computed: {
|
|
...mapState('user', ['anyringToken', 'user']),
|
|
|
|
nickName() {
|
|
const anyringToken = sessionStorage.getItem('anyringToken') || this.anyringToken;
|
|
const user = sessionStorage.getItem('user') && JSON.parse(sessionStorage.getItem('user'));
|
|
if (anyringToken) {
|
|
if (user.wxInfo.nickname) {
|
|
return user.wxInfo.nickname;
|
|
} else {
|
|
const account = this.user.account || user.account;
|
|
return account;
|
|
}
|
|
} else {
|
|
return '';
|
|
}
|
|
},
|
|
},
|
|
|
|
methods: {
|
|
jumUrl(url, index) {
|
|
if (this.$route.path !== url) {
|
|
this.$router.push(url);
|
|
}
|
|
this.activeItem = index;
|
|
},
|
|
},
|
|
};
|
|
</script>
|
|
|
|
<style lang="stylus" scoped>
|
|
.head {
|
|
height: 80px;
|
|
width: 100%;
|
|
background: white;
|
|
// position: relative;
|
|
}
|
|
|
|
.list-down {
|
|
margin-right: 20px;
|
|
font-size: 16px;
|
|
color: rgba(0, 0, 0, 0.65);
|
|
}
|
|
|
|
.list-down:hover {
|
|
color: #13ACC4;
|
|
border-bottom: 2px solid #13ACC4;
|
|
}
|
|
|
|
.list-down-active {
|
|
color: #13ACC4;
|
|
border-bottom: 2px solid #13ACC4;
|
|
}
|
|
|
|
.logo-img {
|
|
height: 44px;
|
|
}
|
|
|
|
.icon-head {
|
|
font-size: 24px;
|
|
}
|
|
|
|
.icon-head-right {
|
|
margin-right: 32px;
|
|
}
|
|
|
|
@media only screen and (max-width: 1400px) {
|
|
.list-down {
|
|
margin-right: 18px;
|
|
font-size: 14px;
|
|
}
|
|
|
|
// .logo-img {
|
|
// height: 44px;
|
|
// }
|
|
.icon-head {
|
|
font-size: 24px;
|
|
}
|
|
|
|
.icon-head-right {
|
|
margin-right: 24px;
|
|
}
|
|
}
|
|
</style>
|
|
|