Browse Source

退出登录位置

lihuilin/feature-20250718094329-25周年庆后台
lihuilin 4 weeks ago
parent
commit
53006a66a9
  1. 11
      activitylink/src/router/index.js
  2. 134
      activitylink/src/views/zhongchou/index.vue

11
activitylink/src/router/index.js

@ -1,3 +1,4 @@
import { ElMessage } from 'element-plus';
import { createRouter, createWebHistory } from 'vue-router' import { createRouter, createWebHistory } from 'vue-router'
const routes = [ const routes = [
{ {
@ -75,5 +76,13 @@ const router = createRouter({
history: createWebHistory('/testBack/'), history: createWebHistory('/testBack/'),
routes routes
}) })
// 导出
router.beforeEach((to, from, next) => {
const token = localStorage.getItem("token");
if (to.name != "homePage" && !token) {
next('/homePage');
ElMessage.error('请先登录!');
}
next();
})
// 暴露
export default router export default router

134
activitylink/src/views/zhongchou/index.vue

@ -1,4 +1,3 @@
<script setup> <script setup>
import { import {
Promotion, Promotion,
@ -25,15 +24,14 @@ const handleLogout = () => {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(() => {
}).then(async () => {
// //
const response = adminlogout(
const response = await adminlogout(
{ {
token: localStorage.getItem('token') token: localStorage.getItem('token')
} }
) )
if(response.code === 200)
{
if (response.code === 200) {
router.push('/homePage'); router.push('/homePage');
localStorage.removeItem('token'); localStorage.removeItem('token');
ElMessage.success('退出成功') ElMessage.success('退出成功')
@ -51,70 +49,71 @@ const handleLogout = () => {
<template> <template>
<div class="common-layout"> <div class="common-layout">
<el-container class="el-container">
<!-- 左侧菜单 -->
<el-aside class="aside">
<el-menu
active-text-color="#ffd04b"
background-color="#545c64"
class="el-menu-vertical-demo"
default-active="/index"
text-color="#fff"
@open="handleOpen"
@close="handleClose"
style="height: 100%;"
router
>
<el-menu-item index="/zhongchou/mainimg" >
<el-icon><Promotion /></el-icon>
<span>后台管理系统</span>
</el-menu-item>
<el-menu-item index="/zhongchou/levelManagement" >
<el-icon><location /></el-icon>
<span>等级管理</span>
</el-menu-item>
<el-menu-item index="/zhongchou/giftManagement" >
<el-icon><icon-menu /></el-icon>
<span>礼品管理</span>
</el-menu-item>
<el-menu-item index="/zhongchou/winningManagement">
<el-icon><document /></el-icon>
<span>中奖管理</span>
</el-menu-item>
<el-menu-item index="/zhongchou/activityManagement">
<el-icon><HelpFilled /></el-icon>
<span>活动管理</span>
</el-menu-item>
<el-container class="el-container">
<!-- 左侧菜单 -->
<el-aside class="aside">
<el-menu active-text-color="#ffd04b" background-color="#545c64" class="el-menu-vertical-demo"
default-active="/index" text-color="#fff" @open="handleOpen" @close="handleClose" style="height: 100%;"
router>
<el-menu-item index="/zhongchou/mainimg">
<el-icon>
<Promotion />
</el-icon>
<span>后台管理系统</span>
</el-menu-item>
<el-menu-item index="/zhongchou/levelManagement">
<el-icon>
<location />
</el-icon>
<span>等级管理</span>
</el-menu-item>
<el-menu-item index="/zhongchou/giftManagement">
<el-icon><icon-menu /></el-icon>
<span>礼品管理</span>
</el-menu-item>
<el-menu-item index="/zhongchou/winningManagement">
<el-icon>
<document />
</el-icon>
<span>中奖管理</span>
</el-menu-item>
<el-menu-item index="/zhongchou/userManagement">
<el-icon><User /></el-icon>
<span>用户管理</span>
</el-menu-item>
<el-menu-item index="/zhongchou/activityManagement">
<el-icon>
<HelpFilled />
</el-icon>
<span>活动管理</span>
</el-menu-item>
<el-menu-item index="/zhongchou/logout" @click="handleLogout">
<el-icon><Setting /></el-icon>
<span>退出登录</span>
</el-menu-item>
</el-menu>
</el-aside>
<el-main class="el-main">
<router-view></router-view>
</el-main>
</el-container>
<el-menu-item index="/zhongchou/userManagement">
<el-icon>
<User />
</el-icon>
<span>用户管理</span>
</el-menu-item>
<!--
<el-menu-item index="/zhongchou/logout" @click="handleLogout">
<el-icon>
<Setting />
</el-icon>
<span>退出登录</span>
</el-menu-item> -->
</el-menu>
</el-aside>
<el-header class="el-header">
<el-button type="primary" @click="handleLogout">退出登录</el-button>
</el-header>
<el-main class="el-main">
<router-view></router-view>
</el-main>
</el-container>
</div> </div>
</template> </template>
<style scoped> <style scoped>
a {
color: white;
text-decoration: none;
}
.aside { .aside {
width: 220px; width: 220px;
border-right: 1px solid #ccc; border-right: 1px solid #ccc;
@ -134,8 +133,15 @@ a {
} }
.el-main { .el-main {
flex: 1; /* 关键:自动撑满剩余空间 */
flex: 1;
/* 关键:自动撑满剩余空间 */
padding: 20px; padding: 20px;
overflow: auto; overflow: auto;
} }
.el-header {
position: fixed;
right: 20px;
top: 20px;
}
</style> </style>
Loading…
Cancel
Save