elementUI表格中某个字段(state)使用计算属性进行转换为对应中文显示

代码案例:

复制代码
<template>
  <el-table
    :data="tableData"
    style="width: 100%"
  >
    <el-table-column
      prop="date"
      label="日期"
      width="180"
    />
    <el-table-column
      prop="name"
      label="姓名"
      width="180"
    />
    <el-table-column
      prop="state"
      label="地址"
    >
      <template slot-scope="scope">
        {{ stateNameMap(scope.row.state) }}
      </template></el-table-column>
  </el-table>
</template>

<script>
export default {
  data() {
    return {
      homeCity: [
        { state: 1, name: '李四' },
        { state: 3, name: '张三' },
        { state: 7, name: '王五' },
        { state: 33, name: '王五1' }
      ],
      state: 1,
      tableData: [{
        date: '2016-05-02',
        name: '王小虎',
        state: 1
      }, {
        date: '2016-05-04',
        name: '王小虎',
        state: 3
      }, {
        date: '2016-05-01',
        name: '王小虎',
        state: 7
      }, {
        date: '2016-05-03',
        name: '王小虎',
        state: 3
      }]
    }
  },
  computed: {

    stateNameMap() {
      return (state) => {
        console.log(state, '>>>')
        // 在homeCity数组中查找具有匹配ID的对象
        const row = this.homeCity.find(r => r.state === state)
        // 如果找到了对象,则返回其name属性;否则,返回一个默认值(如'未知城市')
        return row ? row.name : '未知城市'
      }
    }
  },
  methods: {

  }
}
</script>

效果图:

相关推荐
天若有情6732 小时前
从 try-catch 回调到链式调用:一种更优雅的 async/await 错误处理方案
前端·异常处理·前端开发·async·异步·await·异步编程
ShenJLLL6 小时前
vue部分知识点.
前端·javascript·vue.js·前端框架
恋猫de小郭7 小时前
你是不是觉得 R8 很讨厌,但 Android 为什么选择 R8 ?也许你对 R8 还不够了解
android·前端·flutter
PineappleCoder8 小时前
告别“幻影坦克”:手把手教你丝滑规避布局抖动,让页面渲染快如闪电!
前端·性能优化
武帝为此8 小时前
【Shell变量替换与测试】
前端·chrome
CappuccinoRose9 小时前
CSS 语法学习文档(十九)
前端·css·属性·flex·grid·学习资源·格式化上下文
雷电法拉珑9 小时前
财务数据批量采集
linux·前端·python
We་ct10 小时前
LeetCode 105. 从前序与中序遍历序列构造二叉树:题解与思路解析
前端·算法·leetcode·链表·typescript
前端 贾公子10 小时前
深入理解 Vue3 的 v-model 及自定义指令的实现原理(下)
前端·html