功能描述:
此列中的数据是从字典表中获取的,但是获取的都是数字,而显然需要获取数字对应的文字信息,使用 下边这种方式获取数字对应的信息,可以实现对于单个数据的获取,但是对于,多个数字且要获取到对应的多个文字信息,使用下面的方式是无法实现的。
<template slot-scope="scope">
<!--这种方式是直接获取字典表中此项数据对应的文字信息,存在局限性,对于多个数据的情况无法获取-->
<span>{{ transDict('SALARY', (scope.row.salary)) }}</span>
</template>
解决以上问题的方法,引用外部方法可以实现获取所有的数字对应的文字信息
<template slot-scope="scope">
<!--引入方法,对获取到的所有数据进行处理-->
<span>{{transDictMul('WORK_TYPE', scope.row.workType) }}</span>
</template>
methods: {
// 用于对多选 工种 数据的拼接
transDictMul (group, handleStr) {
if (handleStr === null || handleStr === '') {
return ''
}
let arr = handleStr.split(',')
let finalStr = ''
for (let i = 0; i < arr.length; i++) {
// 'WORK_TYPE'
// 对于数据后面拼接一个 ','的两种处理方式
// 方式一
// let tempString = (i === arr.length - 1 ? '' : ',')
// finalStr += this.transDict (group, arr[i]) + tempString
// 方式二
finalStr += this.transDict(group, arr[i]) + ','
}
// 方式一
// return finalStr
// 方式二
return finalStr.substring(0, finalStr.length - 1)
},
}