This commit is contained in:
Ironsp
2026-05-11 15:25:09 +08:00
parent a29a26e391
commit 31dc367e87
360 changed files with 29979 additions and 0 deletions

26
src/utils/dict.ts Normal file
View File

@@ -0,0 +1,26 @@
import { getDicts } from '@/api/system/dict/data';
import { useDictStore } from '@/store/modules/dict';
/**
* 获取字典数据
*/
export const useDict = (...args: string[]): { [key: string]: DictDataOption[] } => {
const res = ref<{
[key: string]: DictDataOption[];
}>({});
args.forEach(async (dictType) => {
res.value[dictType] = [];
const dicts = useDictStore().getDict(dictType);
if (dicts) {
res.value[dictType] = dicts;
} else {
await getDicts(dictType).then((resp) => {
res.value[dictType] = resp.data.map(
(p): DictDataOption => ({ label: p.dictLabel, value: p.dictValue, elTagType: p.listClass, elTagClass: p.cssClass })
);
useDictStore().setDict(dictType, res.value[dictType]);
});
}
});
return res.value;
};