1234567891011121314151617181920212223242526272829 |
- // 系统全局字典
- import useDictStore from '@/stores/modules/dict'
- import { getDictsApi } from '@/api/modules/system/dictData'
- /**
- * 获取字典数据
- */
- export const useDict = (...args: string[]): { [key: string]: DictDataOption[] } => {
- const res = ref<{
- [key: string]: DictDataOption[]
- }>({})
- return (() => {
- args.forEach(async dictType => {
- res.value[dictType] = []
- const dicts = useDictStore().getDict(dictType)
- if (dicts) {
- res.value[dictType] = dicts
- } else {
- await getDictsApi(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
- })()
- }
|