当前位置: 首页 > news >正文

el-table-column字段格式化转换,formatter属性使用

el-table-column字段格式化转换,formatter属性使用

el-table-column是element ui框架中table的子元素,用于控制单列字段的展示,本文介绍el-table-column的formatter属性的使用

element ui的table-column官方文档地址:https://element.eleme.cn/#/zh-CN/component/table#table-column-attributes

1. table-column formatter属性介绍

下面是element ui官方文档的描述

参数说明类型可选值默认值
formatter用来格式化内容Function(row, column, cellValue, index)

2. 使用方式

2.1. 无传参方式

2.1.1. 代码示例
<template>
    <el-table
      :data="tableData"
      style="width: 100%">
      <el-table-column
        prop="name"
        label="姓名"
        width="180">
      </el-table-column>
       <el-table-column
        prop="status"
        label="状态" :formatter='statusFormatter' >
      </el-table-column>
    </el-table>
  </template>

  <script>
    export default {
        methods: {
     	 statusFormatter(row, column, cellValue, index) {
         if('0' === cellValue){
           return 'offline'
         }else if('1' === cellValue){
           return 'online'
         }
         return '-';
      }
    },
      data() {
        return {
          tableData: [{
            name: '王小虎',
            status: '1'
          }, {
            name: '王大虎',
            status: '0'
          }]
        }
      }
    }
  </script>
2.1.2. 效果
姓名状态
王小虎online
王大虎offline

2.2. 带传参数方式

2.2.1. 代码示例
<template>
    <el-table
      :data="tableData"
      style="width: 100%">
      <el-table-column
        prop="name"
        label="姓名"
        width="180">
      </el-table-column>
       <el-table-column    
        label="性别" :formatter="(row) => codeFormatter(row.sex,this.sexOptions)" >
      </el-table-column>
       <el-table-column
        label="状态" :formatter="(row) => codeFormatter(row.status,this.statusOptions)" >
      </el-table-column>
    </el-table>
  </template>

  <script>
    export default {
       methods: {
     	 codeFormatter(code, options) {
         	for(let i=0;i<options.length;i++){
             	let option = options[i]
         	    if(option!=null && option.code === code){
         	   	 return option.label
         	   }
         	}
         return '-';
      }
    },
      data() {
        return {
          tableData: [{
            name: '王小美',
            sex: 0,
            status: '1'
          }, {
            name: '王大虎',
            sex: 1,
            status: '0'
          }],
          sexOptions: [{
             code: 0,
             label: '女'
          }, {
             code: 1,
             label: '男'
          }],
          statusOptions: [{
            code: '0',
            label: 'offline'
          }, {
            code: '1',
            label: 'online'
          }]
        }
      }
    }
  </script>
2.2.2. 效果
姓名性别状态
王小美online
王大虎offline

相关文章:

  • 独立开发者系列(42)——MYSQL语句使用和进阶
  • Pod的调度机制
  • 详解Xilinx FPGA高速串行收发器GTX/GTP(11)--详解GTX的示例工程
  • 记录一次绕过 Android 服务端的证书校验的详细过程
  • PyTorch深度学习实战(10)—— 神经网络工具箱nn.Module
  • 二叉树------最小堆,最大堆。
  • 杂项复现-中间件
  • 秃姐学AI系列之:PyTorch模型构造 | 参数管理 | 自定义层 | 读写文件
  • Java反射机制深度解析与实践应用
  • Electron-builder 打包
  • Unity教程(十)Tile Palette搭建平台关卡
  • ISP代理与双ISP代理的区别
  • 斯坦福UE4 C++课学习补充19:黑洞技能
  • 【TabBar嵌套Navigation案例-按钮交换图片和文字的位置-分类 Objective-C语言】
  • Linux服务器监控实战:使用Prometheus与Grafana
  • React 中的useRef 和 useTransition
  • 实战经验分享:如何申诉并成功解封谷歌开发者账号?
  • vim中跳转头文件
  • 如何设置 Visual Studio Code 的滚轮缩放功能
  • 算法定制与双光谱技术融合:提升巡检车入侵检测系统效能
  • https://app.hackthebox.com/machines/Inject
  • Spring —— Spring简单的读取和存储对象 Ⅱ
  • 渗透测试之冰蝎实战
  • Mybatis、TKMybatis对比
  • Microsoft Office 2019(2022年10月批量许可版)图文教程
  • 《谷粒商城基础篇》分布式基础环境搭建
  • 哈希表题目:砖墙
  • Vue 3.0 选项 生命周期钩子
  • 【车载嵌入式开发】AutoSar架构入门介绍篇
  • 【计算机视觉 | 目标检测】DETR风格的目标检测框架解读