字典缓存

This commit is contained in:
仲么了
2023-12-28 11:27:03 +08:00
parent afeadbe26a
commit c1b08dabd4
7 changed files with 102 additions and 20 deletions

View File

@@ -9,4 +9,6 @@ export const ADMIN_INFO = 'adminInfo'
export const STORE_CONFIG = 'storeConfig'
// 后台标签页
export const STORE_TAB_VIEW_CONFIG = 'storeTabViewConfig'
export const STORE_TAB_VIEW_CONFIG = 'storeTabViewConfig'
// 字典
export const DICT_DATA = 'dictData'

30
src/stores/dictData.ts Normal file
View File

@@ -0,0 +1,30 @@
import { defineStore } from 'pinia'
import { DICT_DATA } from '@/stores/constant/cacheKey'
import type { DictData, BasicDictData } from '@/stores/interface/index'
import { reactive } from 'vue'
export const useDictData = defineStore(
'dictData',
() => {
const state: DictData = reactive({
basic: [],
// 其他接口获取的字典,比如区域
})
const setBasicData = (data: BasicDictData[]) => {
state.basic = data
}
const getBasicData = (code: string) => {
return state.basic.filter(item => item.code === code)[0]?.children || []
}
return {
state,
setBasicData,
getBasicData
}
},
{
persist: {
key: DICT_DATA
}
}
)

View File

@@ -41,5 +41,18 @@ export interface AdminInfo {
last_login_time: string
token: string
refresh_token: string
super:boolean
super: boolean
}
export interface DictData {
basic: BasicDictData[]
}
export interface BasicDictData {
name: string
id: string
code: string
value: null
sort: number | null
children?: BasicDictData[]
}