uniapp 处理列表数据,一页十个,做分页,代码示例
时间: 2023-08-12 15:04:48 浏览: 474
当处理列表数据分页时,你可以参考以下示例代码:
```vue
<template>
<div>
<!-- 显示当前页的数据 -->
<ul>
<li v-for="item in currentPageData" :key="item.id">{{ item.name }}</li>
</ul>
<!-- 显示分页按钮 -->
<div>
<button @click="prevPage" :disabled="currentPage === 1">上一页</button>
<button @click="nextPage" :disabled="currentPage === totalPages">下一页</button>
</div>
</div>
</template>
<script>
export default {
data() {
return {
listData: [], // 所有列表数据
pageSize: 10, // 每页显示的数据条数
currentPage: 1, // 当前页码
};
},
computed: {
totalPages() {
return Math.ceil(this.listData.length / this.pageSize); // 计算总页数
},
currentPageData() {
const start = (this.currentPage - 1) * this.pageSize; // 当前页起始索引
const end = start + this.pageSize; // 当前页结束索引
return this.listData.slice(start, end); // 截取当前页的数据
},
},
methods: {
prevPage() {
if (this.currentPage > 1) {
this.currentPage--; // 上一页
}
},
nextPage() {
if (this.currentPage < this.totalPages) {
this.currentPage++; // 下一页
}
},
},
};
</script>
```
在上面的示例中,`listData` 是你的列表数据源,`pageSize` 是每页显示的数据条数,`currentPage` 是当前页码。使用计算属性 `totalPages` 计算总页数,然后根据当前页码和 `pageSize` 计算当前页的起始索引和结束索引,通过 `slice` 方法截取当前页的数据,并在页面中展示。同时,通过点击上一页和下一页按钮,更新 `currentPage` 的值,从而实现分页功能。
请根据你的实际情况,将代码中的数据和具体逻辑进行调整。希望以上示例能帮助到你!如有进一步问题,请随时提问。
阅读全文