refactor: simplify wrapper storage

This commit is contained in:
张传龙
2022-07-01 23:27:05 +08:00
parent 90aa54d4a4
commit 57bc68e7b0
7 changed files with 34 additions and 37 deletions

View File

@@ -1,15 +1,21 @@
import { createWebStorage } from './web-storage'
import { createStorage } from './storage'
const prefixKey = 'Vue_Naive_Admin_'
export const createLocalStorage = function (option = {}) {
return createWebStorage({
return createStorage({
prefixKey: option.prefixKey || '',
storage: localStorage,
})
}
export const createSessionStorage = function (option = {}) {
return createWebStorage({
return createStorage({
prefixKey: option.prefixKey || '',
storage: sessionStorage,
})
}
export const lStorage = createLocalStorage({ prefixKey })
export const sStorage = createSessionStorage({ prefixKey })

View File

@@ -1,6 +1,6 @@
import { isNullOrUndef } from '@/utils/is'
class WebStorage {
class Storage {
constructor(option) {
this.storage = option.storage
this.prefixKey = option.prefixKey
@@ -50,6 +50,6 @@ class WebStorage {
}
}
export function createWebStorage({ prefixKey = '', storage = sessionStorage }) {
return new WebStorage({ prefixKey, storage })
export function createStorage({ prefixKey = '', storage = sessionStorage }) {
return new Storage({ prefixKey, storage })
}

View File

@@ -1,25 +1,23 @@
import { createLocalStorage } from './cache'
import { lStorage } from './cache'
import { refreshToken } from '@/api/auth'
const TOKEN_CODE = 'access_token'
const DURATION = 6 * 60 * 60
export const lsToken = createLocalStorage()
export function getToken() {
return lsToken.get(TOKEN_CODE)
return lStorage.get(TOKEN_CODE)
}
export function setToken(token) {
lsToken.set(TOKEN_CODE, token, DURATION)
lStorage.set(TOKEN_CODE, token, DURATION)
}
export function removeToken() {
lsToken.remove(TOKEN_CODE)
lStorage.remove(TOKEN_CODE)
}
export async function refreshAccessToken() {
const tokenItem = lsToken.getItem(TOKEN_CODE)
const tokenItem = lStorage.getItem(TOKEN_CODE)
if (!tokenItem) {
return
}