refactor: 缓存重命名Local修改为localStorage

This commit is contained in:
郝先瑞
2022-02-24 00:17:42 +08:00
parent 81263a4106
commit e598761189
4 changed files with 27 additions and 22 deletions

View File

@@ -1,31 +1,32 @@
import {AppState} from "@/store/interface";
import {Local} from "@/utils/storage";
import {localStorage} from "@/utils/storage";
import {store} from "@/store";
import {defineStore} from "pinia";
import { getLanguage } from '@/lang/index'
export const useAppStore = defineStore({
id: "app",
state: (): AppState => ({
device: 'desktop',
sidebar: {
opened: Local.get('sidebarStatus') ? !!+Local.get('sidebarStatus') : true,
opened: localStorage.get('sidebarStatus') ? !!+localStorage.get('sidebarStatus') : true,
withoutAnimation: false
},
language: 'zh',
size: Local.get('size')||'default'
language: getLanguage(),
size: localStorage.get('size')||'default'
}),
actions: {
toggleSidebar() {
this.sidebar.opened = !this.sidebar.opened
this.sidebar.withoutAnimation = false
if (this.sidebar.opened) {
Local.set('sidebarStatus', 1)
localStorage.set('sidebarStatus', 1)
} else {
Local.set('sidebarStatus', 0)
localStorage.set('sidebarStatus', 0)
}
},
closeSideBar(withoutAnimation: any) {
Local.set('sidebarStatus', 0)
localStorage.set('sidebarStatus', 0)
this.sidebar.opened = false
this.sidebar.withoutAnimation = withoutAnimation
},
@@ -34,7 +35,11 @@ export const useAppStore = defineStore({
},
setSize(size: string) {
this.size = size
Local.set('size', size)
localStorage.set('size', size)
},
setLanguage(language: string) {
this.language = language
localStorage.set('language', language)
}
}
})

View File

@@ -1,13 +1,13 @@
import { defineStore } from "pinia";
import { store } from "@/store";
import {UserState} from "@/store/interface";
import {Local} from "@/utils/storage";
import {localStorage} from "@/utils/storage";
import {getUserInfo, login, logout} from "@/api/login";
import {resetRouter} from "@/router";
const getDefaultState = () => {
return {
token: Local.get('token'),
token: localStorage.get('token'),
nickname: '',
avatar: '',
roles: [],
@@ -18,7 +18,7 @@ const getDefaultState = () => {
export const useUserStore = defineStore({
id:"user",
state: ():UserState=>({
token: Local.get('token') || '',
token: localStorage.get('token') || '',
nickname: '',
avatar: '',
roles: [],
@@ -50,7 +50,7 @@ export const useUserStore = defineStore({
).then(response => {
const {access_token, token_type} = response.data
const accessToken = token_type + " " + access_token
Local.set("token", accessToken)
localStorage.set("token", accessToken)
this.token = accessToken
resolve(access_token)
}).catch(error => {
@@ -90,7 +90,7 @@ export const useUserStore = defineStore({
logout() {
return new Promise(((resolve, reject) => {
logout().then(() => {
Local.remove('token')
localStorage.remove('token')
this.RESET_STATE()
resetRouter()
resolve(null)
@@ -105,7 +105,7 @@ export const useUserStore = defineStore({
*/
resetToken(){
return new Promise(resolve=>{
Local.remove('token')
localStorage.remove('token')
this.RESET_STATE()
resolve(null)
})

View File

@@ -1,7 +1,7 @@
import axios from "axios";
import {ElMessage, ElMessageBox} from "element-plus";
import {Local} from "@/utils/storage";
import { useUserStoreHook } from "@/store/modules/user";
import {localStorage} from "@/utils/storage";
import {useUserStoreHook} from "@/store/modules/user";
// 创建 axios 实例
const service = axios.create({
@@ -17,7 +17,7 @@ service.interceptors.request.use(
throw new Error(`Expected 'config' and 'config.headers' not to be undefined`);
}
if (useUserStoreHook().token) {
config.headers.Authorization = `${Local.get('token')}`;
config.headers.Authorization = `${localStorage.get('token')}`;
}
return config
}, (error) => {
@@ -43,14 +43,14 @@ service.interceptors.response.use(
(error) => {
const {code, msg} = error.response.data
if (code === 'A0230') { // token 过期
Local.clear(); // 清除浏览器全部缓存
localStorage.clear(); // 清除浏览器全部缓存
window.location.href = '/'; // 跳转登录页
ElMessageBox.alert('当前页面已失效,请重新登录', '提示', {})
.then(() => {
})
.catch(() => {
});
}else{
} else {
ElMessage({
message: msg || '系统出错',
type: 'error'

View File

@@ -1,7 +1,7 @@
/**
* window.localStorage 浏览器永久缓存
*/
export const Local = {
export const localStorage = {
// 设置永久缓存
set(key: string, val: any) {
window.localStorage.setItem(key, JSON.stringify(val));
@@ -18,13 +18,13 @@ export const Local = {
// 移除全部永久缓存
clear() {
window.localStorage.clear();
},
}
};
/**
* window.sessionStorage 浏览器临时缓存
*/
export const Session = {
export const sessionStorage = {
// 设置临时缓存
set(key: string, val: any) {
window.sessionStorage.setItem(key, JSON.stringify(val));