From 00d0b83bde14f733c4698c97dbc04f40680f6909 Mon Sep 17 00:00:00 2001 From: gerson <1405270578@qq.com> Date: 星期四, 13 二月 2025 22:38:35 +0800 Subject: [PATCH] Merge branch 'master' of http://47.103.154.90:83/r/IEE/Web.V1 --- src/components/AppHeader.vue | 56 +++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 41 insertions(+), 15 deletions(-) diff --git a/src/components/AppHeader.vue b/src/components/AppHeader.vue index 8bceb05..144e8ea 100644 --- a/src/components/AppHeader.vue +++ b/src/components/AppHeader.vue @@ -1,7 +1,7 @@ <template> <header class="bg-white shadow-sm flex items-center"> - <div class=" flex w-full"> - <div class="flex items-center h-20 mx-auto"> + <div class="flex w-full"> + <div class="flex items-center h-20 mx-auto"> <!-- Logo --> <div class="flex items-center cursor-pointer"> <router-link to="/"> @@ -13,26 +13,32 @@ <!-- Navigation Menu --> <nav class="flex ml-8"> <el-menu mode="horizontal" :ellipsis="false" class="border-none" router :default-active="activeRoute"> - <el-menu-item index="/" class="!px-4">棣栭〉</el-menu-item> - <el-menu-item index="/industrial-software" class="!px-4">宸ヤ笟杞欢|宸ヤ笟APP</el-menu-item> - <el-menu-item index="/supply-demand" class="!px-4">渚涢渶瀵规帴</el-menu-item> - <el-menu-item index="/application" class="!px-4">搴旂敤鎺ㄥ箍</el-menu-item> - <el-menu-item index="/public-service" class="!px-4">鍏叡鏈嶅姟</el-menu-item> + <el-menu-item index="/home" class="!px-4">棣栭〉</el-menu-item> + <el-menu-item index="/certified-products" class="!px-4">璁よ瘉浜у搧</el-menu-item> + <el-menu-item index="/eec-label-search" class="!px-4">璇佷功鏌ヨ</el-menu-item> + <el-menu-item index="/news-detail/99" class="!px-4">琛ヨ创鏀跨瓥</el-menu-item> + <el-menu-item class="!px-4" @click="linkClick('http://xpump.net/#/Index')">鏌ユ车缃�</el-menu-item> </el-menu> </nav> <!-- Search and User Actions --> <div class="flex items-center space-x-8 ml-[65px]"> - <el-input v-model="searchQuery" placeholder="鎵惧伐涓�/鎵惧ぇ鏁版嵁" class="w-48 "> + <el-input v-model="searchQuery" placeholder="鎵惧伐涓�/鎵惧ぇ鏁版嵁" class="w-48"> <template #suffix> <el-icon><Search /></el-icon> </template> </el-input> - <div class="flex items-center text-gray-600 text-sm text-nowrap "> - <a href="#" class="hover:text-blue-500">娉ㄥ唽</a> - <span class="mx-2">路</span> - <a href="#" class="hover:text-blue-500">鐧诲綍</a> + <div class="flex items-center text-gray-600 text-sm text-nowrap"> + <template v-if="!userInfo"> + <a href="#" class="hover:text-blue-500">娉ㄥ唽</a> + <span class="mx-2">路</span> + <router-link to="/login" class="hover:text-blue-500">鐧诲綍</router-link> + </template> + <template v-else> + <span class="text-blue-500 mr-2">{{ userInfo.username }}</span> + <a href="#" class="hover:text-blue-500" @click.prevent="handleLogout">閫�鍑�</a> + </template> </div> </div> </div> @@ -41,14 +47,34 @@ </template> <script setup lang="ts"> -import { ref, computed } from 'vue'; -import { useRoute } from 'vue-router'; -import { Search } from '@element-plus/icons-vue'; import headerLogo from '@/assets/logo/header_logo.png'; +import { Search } from '@element-plus/icons-vue'; +import { ElMessage } from 'element-plus'; +import { computed, ref } from 'vue'; +import { useRoute, useRouter } from 'vue-router'; + const route = useRoute(); +const router = useRouter(); const searchQuery = ref(''); const activeRoute = computed(() => route.path); + +// 鑾峰彇鐢ㄦ埛淇℃伅 +const userInfo = computed(() => { + const info = localStorage.getItem('userInfo'); + return info ? JSON.parse(info) : null; +}); + +// 澶勭悊鐧诲嚭 +const handleLogout = () => { + localStorage.removeItem('userInfo'); + ElMessage.success('宸查��鍑虹櫥褰�'); + router.push('/login'); +}; + +const linkClick = (url) => { + window.open(url, '_blank'); +}; </script> <style scoped> -- Gitblit v1.9.3