前端代替后端做分页操作

复制代码
如果后端没有分页api,前端如何做分页

一、使用computed

复制代码
这个变量应该是计算之后的值,是一个状态管理变量,跟onMounted类似
ts 复制代码
import {computed} from 'vue'
// 定义ref储存rolelist,这里是原始数据
const roleList = ref([])

// 定义页码
let pageIndex = ref(1)
// 定义显示的列表
let showRoles = computed(() => {
	// 切片操作
	return roles.value.slice((pageIndex.value-1) * 10, pageIndex)
})

// 查询数据操作,自己写
复制代码
将showRoles替换绑定表格数据,我这里是组件,是父传子定义的一个变量tableData,如果你这里插入的是一个表格,那么应该是:Data="showRoles"
html 复制代码
	<PublicTables :tableData="showRoles" @multipleSelection="handleSelection">

                <!-- <template #selection ></template> -->

                <template #tableColumn>

                    <el-table-column property="roleId" label="角色ID" />

                    <el-table-column property="roleName" label="角色名" />

                </template>

                <template #operation>

                    <el-table-column label="操作">

                        <template #default="scope">

                            <el-button size="small" @click="handleEdit(scope.row)">

                                编辑

                            </el-button>

                            <el-button size="small" type="danger" @click="handleDelete(scope.row)">

                                删除

                            </el-button>

                        </template>

                    </el-table-column>

                </template>

            </PublicTables>

二、添加分页器

复制代码
template中添加分页器
html 复制代码
	<el-pagination size="small" background layout=" prev, pager, next, total" :total="roleList.length" :current-page="pageIndex" />
复制代码
这里current-page绑定绑定的页码会保持同步,分页器总页数就是roleList的长度。
到这里应该已经实现了前端分页功能
相关推荐
不简说22 分钟前
JS 代码技巧 vol.9 — 20 个设计模式在真实项目里的应用
前端·javascript·github
CoderLiu27 分钟前
Agent 工程的下一层:为什么「把流程写成图」还不够,还需要 Graph Engineering
前端·人工智能·后端
勇往直前plus31 分钟前
Vue3(篇三) Element Plus
前端·javascript·typescript·vue
爱勇宝40 分钟前
《道德经》第 8 章:真正高级的能力,像水一样成事
前端·后端·程序员
Revolution611 小时前
数组本身没有 map,为什么还能直接调用:原型链怎样查找属性
前端·javascript·面试
bonechips1 小时前
RAG实战(一):EPUB 加载、文本切割与向量入库
前端·数据库
swipe1 小时前
10|(前端转全栈)库存扣减为什么最容易出事故?SKU、并发与原子更新
前端·后端·全栈
cdcdhj1 小时前
vue3中的watchEffect()监听,什么时候监听,什么时候清理,什么时候停止
前端·javascript·vue.js
huabuyu1 小时前
几百 MB 的文件为什么等几分钟才能打开?文件分片下载与渐进预览原理
前端·javascript
虚惊一场1 小时前
麻将桌上的并发控制:扫码进房、乐观版本与零和结算
前端·javascript