This commit is contained in:
sjl
2024-11-05 11:23:38 +08:00
parent c0fcba6a25
commit 7f8aeebb1e
6 changed files with 148 additions and 71 deletions

View File

@@ -1,11 +1,25 @@
import type { Dict } from './../../api/interface/index';
import { defineStore } from 'pinia'
import piniaPersistConfig from '@/stores/helper/persist'
import { DICT_STORE_KEY } from '@/stores/constant'
// 模拟数据
import dictData from '@/api/system/dictData'
//import dictData from '@/api/system/dictData'
import { getDictList } from '@/api/user/login.ts'
//import { getDictList } from '@/api/user/login.ts'
//const dictData = getDictList
// 初始值设为空数组
let dictData: Dict[] = [];
async function fetchDictData() {
try {
const response = await getDictList();
dictData = response.data as unknown as Dict[];
console.log('Fetched dictionary data:', dictData);
} catch (error) {
console.error('Failed to fetch dictionary data:', error);
}
}
fetchDictData();
export const useDictStore = defineStore({
id: DICT_STORE_KEY,
@@ -17,9 +31,12 @@ export const useDictStore = defineStore({
// 获取字典数据数组,如果为空则返回空数组
getDictData(code: string) {
const dict = this.dictData.find(item => item.code === code )
return dict?.children || []
return dict?.children || [];
},
// 初始化获取全部字典数据并缓存
async initDictData() {
await fetchDictData();
},
},
persist: piniaPersistConfig(DICT_STORE_KEY),
})