当前位置:首页 > 前端教程

elementui formatter

2026-03-06 00:06:17前端教程

ElementUI 表格列内容格式化(formatter)

ElementUI 的表格组件(el-table)提供了 formatter 属性,用于对列数据进行自定义格式化处理。该属性接收一个函数,函数参数为当前行数据、当前列配置和单元格值,返回格式化后的内容。

基本用法

在 el-table-column 中定义 formatter 函数:

<el-table :data="tableData">
  <el-table-column prop="date" label="日期" :formatter="formatDate"></el-table-column>
</el-table>

对应的 JavaScript 方法:

elementui formatter

methods: {
  formatDate(row, column, cellValue) {
    // 对日期进行格式化处理
    return new Date(cellValue).toLocaleDateString()
  }
}

格式化数值

格式化数值为货币格式:

formatCurrency(row, column, cellValue) {
  return '¥' + cellValue.toFixed(2)
}

格式化状态

将状态码转换为文字描述:

elementui formatter

formatStatus(row, column, cellValue) {
  const statusMap = {
    0: '未开始',
    1: '进行中',
    2: '已完成'
  }
  return statusMap[cellValue] || '未知状态'
}

多参数格式化

结合多个字段进行格式化:

formatFullName(row, column, cellValue) {
  return `${row.firstName} ${row.lastName}`
}

使用第三方库

结合 moment.js 格式化日期:

import moment from 'moment'

formatDateTime(row, column, cellValue) {
  return moment(cellValue).format('YYYY-MM-DD HH:mm:ss')
}

注意事项

  • formatter 函数应保持纯函数特性,避免副作用
  • 复杂格式化逻辑建议提取到单独的工具函数中
  • 性能敏感场景应考虑缓存格式化结果
  • 国际化场景建议结合 i18n 使用

替代方案

对于更复杂的格式化需求,可以考虑使用 scoped slots:

<el-table-column prop="date" label="日期">
  <template slot-scope="scope">
    {{ customFormat(scope.row.date) }}
  </template>
</el-table-column>

分享给朋友:

相关文章

elementui流程

elementui流程

Element UI 流程设计 Element UI 提供了一套基于 Vue.js 的流程设计组件,适用于展示步骤流程、任务进度等场景。以下为关键实现方法和组件说明: 安装与引入 确保已安装 Ele…

iwiew elementui

iwiew elementui

iView 与 Element UI 对比 iView 和 Element UI 都是基于 Vue.js 的 UI 组件库,适用于快速开发企业级中后台管理系统。以下是两者的详细对比: 设计风格…

elementui ref

elementui ref

ElementUI 中使用 ref 的方法 在 ElementUI 中,ref 主要用于获取组件实例或 DOM 元素的引用,方便直接调用组件方法或操作 DOM。以下是几种常见的使用场景和示例: 获取…

elementui title

elementui title

ElementUI 的 Title 相关组件及用法 ElementUI 提供了多种与标题(Title)相关的组件和配置选项,适用于不同场景的需求。以下是常见的使用方法和组件介绍: 对话框(Dia…

elementui实例

elementui实例

以下是关于 Element UI 实例的整理内容,涵盖常见组件用法和实际开发中的关键点: 安装与基础配置 通过 npm 安装 Element UI: npm install element-ui…

elementui合计

elementui合计

ElementUI 合计功能实现 ElementUI 的表格组件(el-table)提供了合计行功能,可以通过设置 show-summary 属性和 summary-method 方法来自定义合计行的…