当前位置: 首页 > news >正文

使用vue3+<script setup>+element-plus中el-table前端切片完成分页效果

<template><div><el-table :data="visibleData" :row-key="row => row.id"><el-table-column prop="name" label="姓名"></el-table-column><el-table-column prop="age" label="年龄"></el-table-column><el-table-column prop="email" label="邮箱"></el-table-column></el-table><el-pagination@current-change="handleCurrentChange":current-page="currentPage":page-size="pageSize":total="total"></el-pagination></div>
</template><script setup>
import { ref, reactive, onMounted } from 'vue';const tableData = reactive([]);
const visibleData = reactive([]);
const currentPage = ref(1); // 当前页码
const pageSize = 10; // 每页显示的数据数量
const total = ref(0); // 总数据量const loadData = () => {// 模拟异步请求数据setTimeout(() => {// 假设从后端获取到的数据为 responseconst response = {data: [], // 当前页的数据total: 100 // 总数据量};tableData.splice(0, tableData.length, ...response.data);total.value = response.total;updateVisibleData();}, 1000);
};const updateVisibleData = () => {const start = (currentPage.value - 1) * pageSize;const end = currentPage.value * pageSize;visibleData.splice(0, visibleData.length, ...tableData.slice(start, end));
};const handleCurrentChange = (page) => {currentPage.value = page;updateVisibleData();
};onMounted(loadData);
</script>

在上面的示例中,我们使用了 <script setup> 语法来编写组件逻辑。通过 import 引入所需的函数和变量,然后在 <script setup> 中直接使用它们。

在 onMounted 钩子函数中,我们调用 loadData 方法来加载初始数据。

在 handleCurrentChange 方法中,我们更新 currentPage 的值,并调用 updateVisibleData 方法来更新可见数据。

通过这样的实现,你可以在前端完成分页效果,并根据当前页码和每页显示的数据数量来展示对应的数据。

http://www.lryc.cn/news/276165.html

相关文章:

  • vue 中 computed 和 watch 的区别
  • gephi——graphviz插件设置
  • wireshark抓包分析HTTP协议,HTTP协议执行流程,
  • Linux第13步_安装“vim编辑器”及应用介绍
  • Yapi安装配置(CentOs)
  • HCIA-Datacom题库(自己整理分类的)_08_FTP协议【8道题】
  • 【开源GPT项目 - 在问】让知识无界,智能触手可及
  • 【2023 CCF 大数据与计算智能大赛】基于TPU平台实现超分辨率重建模型部署 基于Real-ESRGAN的TPU超分模型部署
  • Vue中的组件通信方式及应用场景
  • RA8900CE汽车用c总线接口实时时钟模块
  • 屏幕截图--Snagit
  • PHP运行环境之宝塔Web站点部署
  • 使用高版本JDK编译低版本代码
  • Zuul相关问题及到案(2024)
  • 【CSS】讲一讲BFC、IFC、GFC、FFC
  • 阶段十-分布式-任务调度
  • Godot4.2——爬虫小游戏简单制作
  • 对象的前世今生与和事佬(static)的故事
  • 报错curl: (6) Could not resolve host: raw.githubusercontent...的解决办法
  • 【基础篇】十二、引用计数法 可达性分析算法
  • C语言算法(二分查找、文件读写)
  • 流媒体学习之路(WebRTC)——Pacer与GCC(5)
  • 2023版本QT学习记录 -11- 多线程的使用(QT的方式)
  • iOS苹果和Android安卓测试APP应用程序的差异
  • 每日算法打卡:数的三次方根 day 7
  • 人机交互主板定制_基于MT8735安卓核心板的自助查询机方案
  • 全志F1C100s Linux 系统编译出错:不能连接 github
  • 如何保障 MySQL 和 Redis 的数据一致性?
  • Leetcode 2999. Count the Number of Powerful Integers
  • 【Reading Notes】(2)