对于select、radio这些常见的组件,我们不希望在页面把数据写死,而是通过数据字典动态获取,这样就会灵活很多,也能提高开发效率。
- 我们可以在数据字典里面,管理字典数据。下面为数据字典的JSON数据,如下所示:
{
"code": 0,
"msg": "success",
"data": [
{
"dictType": "user_gender",
"dataList": [
{
"dictLabel": "男",
"dictValue": "0"
},
{
"dictLabel": "女",
"dictValue": "1"
},
{
"dictLabel": "未知",
"dictValue": "2"
}
]
},
{
"dictType": "user_status",
"dataList": [
{
"dictLabel": "正常",
"dictValue": "1"
},
{
"dictLabel": "停用",
"dictValue": "0"
}
]
}
]
}
- 我们可以通过dictType,查找出dataList数据列表,如下所示:
export function getDictDataList(dictList: any[], dictType: string) {
const type = dictList.find((element: any) => element.dictType === dictType)
if (type) {
return type.dataList
} else {
return []
}
}
- 这样,我们就完成数据的准备工作了,下面就只需要在组件里面使用这些数据即可。