Files
pqs-9100_client/frontend/src/stores/modules/dict.ts

31 lines
940 B
TypeScript
Raw Normal View History

2024-11-05 11:43:27 +08:00
import type { Dict } from './../../api/interface/index'
import { defineStore } from 'pinia'
import piniaPersistConfig from '@/stores/helper/persist'
import { DICT_STORE_KEY } from '@/stores/constant'
// 模拟数据
2024-11-05 11:23:38 +08:00
//import dictData from '@/api/system/dictData'
2024-11-05 14:15:56 +08:00
export const useDictStore = defineStore({
2024-11-05 11:43:27 +08:00
id: DICT_STORE_KEY,
state: () => ({
2024-11-05 14:15:56 +08:00
dictData: [] as Dict[],
2024-11-05 11:43:27 +08:00
}),
getters: {},
actions: {
// 获取字典数据数组,如果为空则返回空数组
getDictData(code: string) {
if (!this.dictData.length) {
return []
}
const dict = this.dictData.find(item => item.code === code)
return dict?.children || []
},
// 初始化获取全部字典数据并缓存
async initDictData(initData: Dict[]) {
this.dictData = initData
},
2024-11-05 11:23:38 +08:00
},
2024-11-05 11:43:27 +08:00
persist: piniaPersistConfig(DICT_STORE_KEY),
})