diff --git a/src/utils/dict.ts b/src/utils/dict.ts index e6e9386de..4ceef96b8 100644 --- a/src/utils/dict.ts +++ b/src/utils/dict.ts @@ -38,11 +38,26 @@ export function getDictOpts(dictType: string) { */ return getDictDatas(dictType) } - +/** + * 判断数据类型,并返回对应的类型 + * @param dictType + */ +function determineType(dictType) { + if (dictType === "true" || dictType === "false") { + return "boolean"; + } else if (!isNaN(parseFloat(dictType)) && parseFloat(dictType).toString() === dictType) { + return "number"; + } else { + return "string"; + } +} export function getDictOptions(dictType: string, valueType?: 'string' | 'number' | 'boolean') { const dictOption: DictDataType[] = [] const dictOptions: DictDataType[] = getDictDatas(dictType) if (dictOptions && dictOptions.length > 0) { + if(!valueType){ + valueType = determineType(dictOptions[0].value); + } dictOptions.forEach((dict: DictDataType) => { dictOption.push({ ...dict,