vue加element-ui实现前端表格分页

news/2024/7/3 2:34:07

如果不从后台请求数据,那么就需要在前端手动管理数据。可以使用以下步骤实现该功能:

  1. 在 Vue 组件的 data 中定义一个数组来存放所有数据(不分页)。
data() {
  return {
    allData: [], // 所有数据
    currentPage: 1, // 当前页数
    pageSize: 10, // 每页显示的条数
  }
}
  1. 在 mounted 钩子函数中,手动获取数据并存放到上一步定义的数组中。
mounted() {
  // 手动获取数据
  this.allData = [
    { name: '张三', age: 18, gender: '男' },
    { name: '李四', age: 22, gender: '女' },
    { name: '王五', age: 26, gender: '男' },
    // ... 其他数据
  ]
}
  1. 在模板中使用 element-ui 的表格组件来展示数据,同时使用 el-pagination 组件来实现分页。其中,表格的数据通过计算属性来获取,分页的总数需要根据数据总条数和每页显示的条数计算得出。
<template>
  <div>
    <el-table :data="tableData" style="width: 100%">
      <el-table-column label="姓名" prop="name"></el-table-column>
      <el-table-column label="年龄" prop="age"></el-table-column>
      <el-table-column label="性别" prop="gender"></el-table-column>
    </el-table>
    <el-pagination
      layout="total, sizes, prev, pager, next, jumper"
      :total="total"
      :page-size="pageSize"
      v-model="currentPage"
    ></el-pagination>
  </div>
</template>

<script>
export default {
  data() {
    return {
      allData: [],
      currentPage: 1,
      pageSize: 10,
    }
  },
  mounted() {
    // 手动获取数据
    this.allData = [
      { name: '张三', age: 18, gender: '男' },
      { name: '李四', age: 22, gender: '女' },
      { name: '王五', age: 26, gender: '男' },
      // ... 其他数据
    ]
  },
  methods: {
    // 获取当前页的数据
    getCurrentPageData() {
      const start = (this.currentPage - 1) * this.pageSize
      const end = start + this.pageSize
      return this.allData.slice(start, end)
    },
  },
  computed: {
    // 计算分页总数
    total() {
      return Math.ceil(this.allData.length / this.pageSize)
    },
    // 计算当前页的数据
    tableData() {
      return this.getCurrentPageData()
    },
  },
}
</script>

http://lihuaxi.xjx100.cn/news/1292449.html

相关文章

Java 引用传递

引用传递是 Java 中一个重要的概念&#xff0c;它与值传递不同&#xff0c;可以使得函数或方法可以修改传入的对象。本文将介绍 Java 中的引用传递&#xff0c;包括其定义、实现方式、与值传递的区别以及示例代码。 什么是引用传递 在 Java 中&#xff0c;变量可以存储基本类…

Character类(Java)

文章目录 1. 介绍2. 分析3. 方法3.1 isDigit()方法 --- isLetter()方法3.2 xxxx()方法3.2 xxxx()方法 1. 介绍 A. 类介绍&#xff1a;   Character 类在对象中包装一个基本类型 char 的值。Character 类型的对象包含类型为 char 的单个字段。 2. 分析 A. 类包结构&#xff1a…

centos磁盘扩容

解释 PE - 物理块&#xff08;Physical Extent&#xff09; 硬盘上有很多实际物理存在的存储块PV - 物理卷 &#xff08;Physical Volume&#xff09; 物理卷处于最底层&#xff0c;它可以是实际物理硬盘上的分区&#xff0c;也可以是整个物理硬盘(相当于单独做一个分区)&…

Bokeh 绘图基础与常用功能

Reference | Getting started with Bokeh – Medium Post 在 Github 上查看交互式的绘图结果 | Bokeh 绘图入门 – Posted by Paradise 在这篇文章中&#xff0c;从最基本的绘图开始&#xff0c;逐步学习 Bokeh 中常用的绘图功能&#xff0c;目标是能满足大部分基础的绘图需求。…

关于在容器中,nignx代理后端多个服务如何保证后端服务的地址不变呢?

关于在容器中&#xff0c;nignx代理后端多个服务如何保证后端服务的地址不变呢&#xff1f; 有什么方法 第一种 如果你的后端服务的IP地址不会随着每一次的版本迭代而发生变化&#xff0c;那么就相当于host network 第二种 如果你的后端服务的IP地址每次都会发生变化 &#xf…

新品预告——旗舰级DG4Pros最详技术解析及应用方案介绍

旗舰级DG4Pros RIY-DG4Pros是目前睿铂性能指标最高的一款全画幅倾斜摄影相机&#xff0c;其核心光学组件部分由睿铂结合多年来的用户反馈与对倾斜摄影技术的探索成果&#xff0c;完全自主研发设计&#xff0c;技术水平领先于市面同类产品。相机镜头内置双高斯结构和超低色散非…

【JavaWeb】Cookie和Session的使用场景

一、Cookie 简介 Cookie —— 浏览器提供的一种持久化存储的机制。 为什么有浏览器需要给用户提供Cookie 这种持久化存储呢&#xff0c;直接存硬盘不好吗&#xff0c;换而言之 Cookie机制到底是个啥&#xff1f;&#xff1f;&#xff1f; 早期浏览器为了避免用户访问恶意网…

解决vmware虚拟机,克隆修改ip后,xshell连接不上问题

1、查看网卡 ifconfig2、修改网卡配置 vim /etc/sysconfig/network-scripts/ifcfg-ens32 改成与上图一样 修改后 3、重启reboot则解决