token修改
This commit is contained in:
@@ -51,22 +51,17 @@ const onMenuCollapse = () => {
|
||||
margin: 2px 0 0 4px;
|
||||
color: v-bind('config.getColorVal("headerBarTabColor")') !important;
|
||||
}
|
||||
.close-icon:hover {
|
||||
background: v-bind('config.getColorVal("headerBarBackground")');
|
||||
color: var(--el-border-color) !important;
|
||||
border-radius: 50%;
|
||||
}
|
||||
&.active {
|
||||
color: v-bind('config.getColorVal("headerBarTabActiveColor")');
|
||||
.close-icon {
|
||||
color: v-bind('config.getColorVal("headerBarTabActiveColor")') !important;
|
||||
color: v-bind('config.getColorVal("headerBarTabActiveColor")') !important;;
|
||||
}
|
||||
}
|
||||
&:hover {
|
||||
color: v-bind('config.getColorVal("headerBarTabActiveColor")');
|
||||
background-color: v-bind('config.getColorVal("headerBarHoverBackground")');
|
||||
.close-icon {
|
||||
color: v-bind('config.getColorVal("headerBarTabActiveColor")') !important;
|
||||
color: v-bind('config.getColorVal("headerBarTabActiveColor")') !important;;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,11 +37,6 @@ const config = useConfig()
|
||||
margin: 2px 0 0 4px;
|
||||
color: v-bind('config.getColorVal("headerBarTabColor")') !important;
|
||||
}
|
||||
.close-icon:hover {
|
||||
background: v-bind('config.getColorVal("headerBarBackground")');
|
||||
color: var(--el-border-color) !important;
|
||||
border-radius: 50%;
|
||||
}
|
||||
&.active {
|
||||
color: v-bind('config.getColorVal("headerBarTabActiveColor")');
|
||||
.close-icon {
|
||||
@@ -52,7 +47,7 @@ const config = useConfig()
|
||||
color: v-bind('config.getColorVal("headerBarTabActiveColor")');
|
||||
background-color: v-bind('config.getColorVal("headerBarHoverBackground")');
|
||||
.close-icon {
|
||||
color: v-bind('config.getColorVal("headerBarTabActiveColor")') !important;
|
||||
color: v-bind('config.getColorVal("headerBarTabActiveColor")') !important;;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
<template #reference>
|
||||
<div class="admin-info" :class="state.currentNavMenu == 'adminInfo' ? 'hover' : ''">
|
||||
<el-avatar :size="25" fit="fill">
|
||||
<img :src="fullUrl(adminInfo.avatar)" alt="" />
|
||||
<img src="@/assets/avatar.png" alt="" />
|
||||
</el-avatar>
|
||||
<div class="admin-name">{{ adminInfo.nickname }}</div>
|
||||
</div>
|
||||
@@ -37,7 +37,7 @@
|
||||
<div>
|
||||
<div class="admin-info-base">
|
||||
<el-avatar :size="70" fit="fill">
|
||||
<img :src="fullUrl(adminInfo.avatar)" alt="" />
|
||||
<img src="@/assets/avatar.png" alt="" />
|
||||
</el-avatar>
|
||||
<div class="admin-info-other">
|
||||
<div class="admin-info-name">{{ adminInfo.nickname }}</div>
|
||||
@@ -45,8 +45,8 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="admin-info-footer">
|
||||
<el-button @click="onAdminInfo" type="primary" plain>{{ 'layouts.personal data' }}</el-button>
|
||||
<el-button @click="onLogout" type="danger" plain>{{ 'layouts.cancellation' }}</el-button>
|
||||
<el-button @click="onAdminInfo" type="primary" plain>个人资料</el-button>
|
||||
<el-button @click="onLogout" type="danger" plain>退出登录</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</el-popover>
|
||||
@@ -106,7 +106,9 @@ const onAdminInfo = () => {
|
||||
routePush({ name: 'routine/adminInfo' })
|
||||
}
|
||||
|
||||
const onLogout = () => {}
|
||||
const onLogout = () => {
|
||||
router.push({ name: 'login' })
|
||||
}
|
||||
|
||||
// const onClearCache = (type: string) => {
|
||||
// if (type == 'storage' || type == 'all') {
|
||||
|
||||
@@ -10,7 +10,7 @@ export const useAdminInfo = defineStore('adminInfo', {
|
||||
nickname: '',
|
||||
avatar: '',
|
||||
last_login_time: '',
|
||||
token: localStorage.getItem('token') || '',
|
||||
token: '',
|
||||
refresh_token: '',
|
||||
super: false
|
||||
}
|
||||
@@ -26,7 +26,6 @@ export const useAdminInfo = defineStore('adminInfo', {
|
||||
setToken(token: string, type: 'auth' | 'refresh') {
|
||||
const field = type == 'auth' ? 'token' : 'refresh_token'
|
||||
this[field] = token
|
||||
window.localStorage.setItem(field, token)
|
||||
},
|
||||
getToken(type: 'auth' | 'refresh' = 'auth') {
|
||||
return type === 'auth' ? this.token : this.refresh_token
|
||||
|
||||
@@ -73,13 +73,19 @@ import { gongkey, login } from '@/api/user'
|
||||
import { useAdminInfo } from '@/stores/adminInfo'
|
||||
import type { FormInstance, InputInstance, FormRules } from 'element-plus'
|
||||
import { useRouter } from 'vue-router'
|
||||
import { ADMIN_INFO } from '@/stores/constant/cacheKey'
|
||||
import { Local } from '@/utils/storage'
|
||||
const router = useRouter()
|
||||
let timer: number
|
||||
|
||||
const formRef = ref<FormInstance>()
|
||||
const usernameRef = ref<InputInstance>()
|
||||
const passwordRef = ref<InputInstance>()
|
||||
const useInfo = useAdminInfo()
|
||||
const userInfo = useAdminInfo()
|
||||
|
||||
Local.remove(ADMIN_INFO)
|
||||
Local.remove(ADMIN_INFO)
|
||||
userInfo.removeToken()
|
||||
interface RuleForm {
|
||||
username: string
|
||||
password: string
|
||||
@@ -107,6 +113,7 @@ const focusInput = () => {
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
|
||||
timer = window.setTimeout(() => {
|
||||
pageBubble.init()
|
||||
}, 0)
|
||||
@@ -134,7 +141,7 @@ const onSubmit = async (formEl: FormInstance | undefined) => {
|
||||
}).then(res => {
|
||||
console.log('🚀 ~ file: login.vue:134 ~ gongkey ~ res:', res)
|
||||
|
||||
useInfo.setToken(res.data.token_type + ' ' + res.data.access_token, 'auth')
|
||||
userInfo.setToken(res.data.token_type + ' ' + res.data.access_token, 'auth')
|
||||
state.submitLoading = false
|
||||
router.push({
|
||||
path: 'admin/dashboard'
|
||||
|
||||
Reference in New Issue
Block a user