Vue笔记-element ui中关于table的前端分页

对于 Element UI 表格的前端分页,可以在组件中使用 JavaScript 来实现数据的分页显示,而不必从后端获取已分页的数据。以下是一个简单的示例,演示如何在前端进行 Element UI 表格的分页:

javascript 复制代码
<template>
  <div>
    <el-table
      :data="getCurrentPageData"
      style="width: 100%">
      <el-table-column
        label="日期"
        prop="date">
      </el-table-column>
      <el-table-column
        label="姓名"
        prop="name">
      </el-table-column>
      <el-table-column
        label="地址"
        prop="address">
      </el-table-column>
    </el-table>
    <el-pagination
      @current-change="handleCurrentChange"
      :current-page="currentPage"
      :page-size="pageSize"
      layout="total, sizes, prev, pager, next, jumper"
      :total="tableData.length">
    </el-pagination>
  </div>
</template>

<script>
  export default {
    data() {
      return {
        tableData: [
          {
            date: '2016-05-02',
            name: '王小虎',
            address: '上海市普陀区金沙江路 1518 弄'
          },
          // more data...
        ],
        currentPage: 1,
        pageSize: 10,
      };
    },
    computed: {
      getCurrentPageData() {
        const start = (this.currentPage - 1) * this.pageSize;
        const end = start + this.pageSize;
        return this.tableData.slice(start, end);
      }
    },
    methods: {
      handleCurrentChange(val) {
        this.currentPage = val;
      }
    }
  };
</script>

在这个示例中,使用了computed属性getCurrentPageData来根据当前页和每页显示条数来计算当前页面应该显示的数据。在分页变化时,我们通过handleCurrentChange方法来更新当前页数。这种方式可以在前端进行数据的分页展示。

相关推荐
小小小小宇6 分钟前
Harness Engineering 与 AI 联动
前端
mqcode9 分钟前
你项目里的 axios,封对了吗?从裸用到生产级的四步进化
vue.js·axios
鱼人11 分钟前
HTML5 页面性能优化大全
前端
ping某12 分钟前
专栏-null 和 undefined 到底是什么?
前端·javascript·后端
用户9004633704016 分钟前
5MB vs 4KB vs 无限大:浏览器存储谁更强?
前端
小小小小宇27 分钟前
Harness Engineering 全解析与应用
前端
牧艺1 小时前
cos-design v3.0:从 15 个 Demo 到 49 个组件的视觉特效库
前端·视觉设计
lichenyang4531 小时前
ASCF 架构升级总览:WebRuntimePage 为什么要变薄
前端
道友可好1 小时前
从今天开始:你的第一个 Harness Engineering 实践
前端·人工智能·后端
Linsk1 小时前
组件 = 模板 + 业务逻辑
java·前端·vue.js