uniapp写一个分页器能实现列表分页
时间: 2023-12-24 19:05:36 浏览: 95
Unity3D实现列表分页效果
可以使用uniapp自带的v-uni-paging组件来实现列表分页。以下是一个基本的示例:
```html
<!-- 在页面中引入v-uni-paging组件 -->
<template>
<view>
<block v-for="(item, index) in list" :key="index">
<view>{{item}}</view>
</block>
<!-- 分页器 -->
<v-uni-paging :current="currentPage" :total="totalPage" @change="onPageChange"></v-uni-paging>
</view>
</template>
<script>
export default {
data() {
return {
list: [], // 列表数据
currentPage: 1, // 当前页码
pageSize: 10, // 每页显示的条数
totalPage: 0 // 总页数
}
},
mounted() {
// 初始化数据
this.getList()
},
methods: {
// 获取列表数据
getList() {
// 发送请求获取数据
// 这里假设获取到的数据为result
const result = ['item1', 'item2', 'item3', 'item4', 'item5', 'item6', 'item7', 'item8', 'item9', 'item10', 'item11', 'item12', 'item13', 'item14', 'item15', 'item16', 'item17', 'item18', 'item19', 'item20', 'item21', 'item22', 'item23', 'item24', 'item25', 'item26', 'item27', 'item28', 'item29', 'item30']
this.list = result
// 计算总页数
this.totalPage = Math.ceil(this.list.length / this.pageSize)
},
// 页码改变时触发
onPageChange(e) {
this.currentPage = e.detail.index + 1
}
}
}
</script>
```
在上面的示例中,我们使用了v-uni-paging组件,通过传入current、total和change等属性来实现分页功能。同时,我们还定义了一个数据list来存储列表数据,通过计算totalPage来获取总页数。当用户点击分页器时,会触发onPageChange方法,我们通过更新currentPage来实现切换页码。
阅读全文