当前位置:首页 > VUE

vue element实现表格

2026-01-14 02:26:36VUE

Vue + Element UI 实现表格

Element UI 提供了强大的表格组件 el-table,结合 Vue 可以快速实现数据展示、排序、筛选等功能。

基础表格实现

安装 Element UI 后,引入 el-table 组件:

<template>
  <el-table :data="tableData" style="width: 100%">
    <el-table-column prop="date" label="日期" width="180"></el-table-column>
    <el-table-column prop="name" label="姓名" width="180"></el-table-column>
    <el-table-column prop="address" label="地址"></el-table-column>
  </el-table>
</template>

<script>
export default {
  data() {
    return {
      tableData: [
        { date: '2023-01-01', name: '张三', address: '北京市' },
        { date: '2023-01-02', name: '李四', address: '上海市' }
      ]
    }
  }
}
</script>

表格排序与筛选

通过 sortablefilters 属性实现:

<el-table-column 
  prop="date" 
  label="日期" 
  sortable
  :filters="[
    { text: '2023-01-01', value: '2023-01-01' },
    { text: '2023-01-02', value: '2023-01-02' }
  ]"
  :filter-method="filterHandler">
</el-table-column>

自定义列模板

使用插槽自定义列内容:

<el-table-column label="操作">
  <template #default="scope">
    <el-button size="mini" @click="handleEdit(scope.row)">编辑</el-button>
  </template>
</el-table-column>

分页功能

结合 el-pagination 组件实现分页:

<el-pagination
  @size-change="handleSizeChange"
  @current-change="handleCurrentChange"
  :current-page="currentPage"
  :page-sizes="[10, 20, 30]"
  :page-size="10"
  layout="total, sizes, prev, pager, next, jumper"
  :total="400">
</el-pagination>

表格事件处理

常用事件包括 row-clickselection-change 等:

<el-table 
  @row-click="handleRowClick"
  @selection-change="handleSelectionChange">
</el-table>

动态加载数据

通过异步请求加载表格数据:

methods: {
  loadData() {
    axios.get('/api/data').then(response => {
      this.tableData = response.data
    })
  }
}

响应式布局

使用 flex 布局或响应式断点确保表格在不同设备上正常显示:

.el-table {
  overflow-x: auto;
}

通过以上方法可以快速实现功能丰富的表格组件。Element UI 的表格组件支持高度定制,可根据实际需求调整样式和功能。

vue element实现表格

标签: 表格vue
分享给朋友:

相关文章

vue项目实现

vue项目实现

Vue 项目实现指南 环境准备 确保已安装 Node.js(建议版本 14+)和 npm/yarn。通过以下命令检查版本: node -v npm -v 安装 Vue CLI(脚手架工具): np…

vue实现年历

vue实现年历

Vue 实现年历的方法 使用 Vue 实现年历可以通过组件化开发方式,结合日期计算和动态渲染完成。以下是两种常见的实现方式: 基于原生 Vue 的日历组件 创建 Calendar.vue 组件文件…

vue实现多选联动

vue实现多选联动

vue实现多选联动的方法 使用v-model绑定数组 在Vue中,可以通过v-model绑定一个数组来实现多选联动。当复选框被选中或取消选中时,数组会自动更新。 <template>…

vue为啥能实现监听

vue为啥能实现监听

Vue 实现监听的原理 Vue 的监听能力主要基于其响应式系统,该系统通过数据劫持和依赖收集实现。当数据变化时,系统能自动触发视图更新或执行回调函数。 核心机制:Object.defineProp…

vue实现横向导航

vue实现横向导航

vue实现横向导航的方法 使用Flex布局实现横向导航 在Vue中可以通过Flex布局快速实现横向导航。创建一个组件,使用display: flex和flex-direction: row属性使导航项…

vue前端实现打印功能

vue前端实现打印功能

使用Vue实现前端打印功能 在Vue项目中实现打印功能可以通过多种方式完成,以下是几种常见的方法: 使用window.print()方法 这是最简单的打印方式,直接调用浏览器的打印功能。 me…