当前位置:首页 > 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 属性实现:

vue element实现表格

<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 组件实现分页:

vue element实现表格

<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
分享给朋友:

相关文章

vue 路由实现

vue 路由实现

Vue 路由实现方法 安装 Vue Router 使用 npm 或 yarn 安装 Vue Router 依赖包: npm install vue-router # 或 yarn add vue-r…

vue实现视频开场

vue实现视频开场

使用 Vue 实现视频开场动画 在 Vue 中实现视频开场动画可以通过结合 HTML5 的 <video> 标签和 Vue 的过渡效果或生命周期钩子来完成。以下是具体实现方法: 安装依赖…

vue 实现拖动

vue 实现拖动

Vue 实现拖动的几种方法 在Vue中实现拖动功能可以通过多种方式,包括原生HTML5的拖放API、第三方库如vuedraggable等。以下是几种常见的实现方法: 使用HTML5拖放API HTM…

vue实现换页

vue实现换页

Vue实现页面切换的方法 在Vue中实现页面切换通常可以通过Vue Router来完成。Vue Router是Vue.js官方的路由管理器,用于构建单页面应用(SPA)。以下是几种常见的实现方式:…

自实现vue

自实现vue

实现 Vue 的核心功能 要实现一个简化版的 Vue,需要理解其核心功能:数据响应式、模板编译、虚拟 DOM 和组件系统。以下是关键步骤的分解: 数据响应式 Vue 使用 Object.define…

vue实现列表

vue实现列表

Vue 实现列表的方法 在 Vue 中实现列表渲染通常使用 v-for 指令,可以动态生成多个元素。以下是几种常见的实现方式: 基础列表渲染 使用 v-for 遍历数组,生成列表项。v-for 需要…