若依在表格中如何将字典的键值转为中文
后端返回的表格中的值绑定在classGrade属性,这个属性在字典中对应的属性是dictValue,所以将这两个属性值进行对比,找到对应的字典项。使用element ui表格中自带的formatter的属性来进行实现,是专门用来格式化内容的。遍历字典项,从字典项中筛选对应的中文,然后返回对应的label值(也就是选项所展示的中文)后端返回的是dictValue,现在要转换成这个dictLabel。
·
文章目录
一、需求:
后端有时候返回的是字典的键值,在前端展示时需要转成中文值
后端返回的是dictValue,现在要转换成这个dictLabel
对应的字典:
返回的是键值,我们需要转换为键值对应的中文
最终效果:
在表格中展示需要转换为中文
二、问题解决
方式一:使用标签
若依中有个比较简单的实现方法,使用<dict-tag>
标签(若依自带的全局组件)就能自动实现转换。
dict.type.字典名称
就可以了。
使用之前需要先引用一下字典类型,然后直接在标签中使用这个字典类型就可以了:
<el-table-column label="登录状态" align="center" prop="status">
<template slot-scope="scope">
<dict-tag :options="dict.type.sys_common_status" :value="scope.row.status"/>
</template>
</el-table-column>
方式二:使用formatter的属性
使用element ui表格中自带的formatter的属性来进行实现,是专门用来格式化内容的。
elementui 官网链接
步骤
1、给需要转换的列绑定formatter属性
2、获取字典项
字典的使用可以看这篇:
若依的字典值如何使用(超详细图文教程)
3、编写formatter属性绑定的方法
row参数是表格中当前行的内容
遍历字典项,从字典项中筛选对应的中文,然后返回对应的label值(也就是选项所展示的中文)
后端返回的表格中的值绑定在classGrade属性,这个属性在字典中对应的属性是dictValue,所以将这两个属性值进行对比,找到对应的字典项。
formatterDict(row){
//根据年级的值 从字典中查找对应的字典项
let obj=this.classListOption.find(item=>{
return item.dictValue==row.classGrade;
})
if(obj!=undefined || obj!=null){
return obj.dictLabel;
}
},
表格的每一行都会自动调用这个formatter方法
这样最终就能实现转换的效果了
更多推荐
已为社区贡献8条内容
所有评论(0)