| | |
| | | import DictOptions from './DictOptions' |
| | | import DictData from './DictData' |
| | | |
| | | export default function(dict, dictMeta) { |
| | | export default function dictConverter(dict, dictMeta) { |
| | | const label = determineDictField(dict, dictMeta.labelField, ...DictOptions.DEFAULT_LABEL_FIELDS) |
| | | const value = determineDictField(dict, dictMeta.valueField, ...DictOptions.DEFAULT_VALUE_FIELDS) |
| | | return new DictData(dict[label], dict[value], dict) |
| | | const children = determineDictField(dict, dictMeta.childrenField, ...DictOptions.DEFAULT_CHILDREN_FIELDS) |
| | | |
| | | // 递归处理子字典 |
| | | const childDicts = dict[children] |
| | | let childDictData = [] |
| | | if (childDicts && childDicts.length > 0) { |
| | | childDictData = childDicts.map(childDict => dictConverter(childDict, dictMeta)) |
| | | } |
| | | |
| | | return new DictData(dict[label], dict[value], dict, childDictData) |
| | | // return new DictData(dict[label], dict[value], dict, dict[children]) |
| | | } |
| | | |
| | | /** |