vue自定义组件之分页组件

分页是WEB开发中很常用的功能,尤其是在各种前后端分离的今天,后端API返回数据,前端根据数据的count以及当前页码page来计算分页页码并渲染到页面上已经是一个很普通很常见的功能了。分页大多数情况下(基本上)是对异步请求数据的处理,因此需要弄明白分页的流程:

  1. 请求API,然后返回第一页的数据以及相关条件下的数据总数
  2. 将数据总数传给组件的属性total,并计算页码后渲染到页面上
  3. 通过点击上一页、下一页、页码以及输入页数跳转到相应的页面并发送请求

了解了流程之后,实现分页组件就容易得多了。
先来看一下效果图:
效果图

创建分页组件
template
<template>
  <div class="pagination">
    <span class="total">共{
  
  {total}}条</span>
    <button type="button" class="prev" @click="prev" v-if="showPrev">
      <span v-if="nextText">{
  
  {prevText}}</span>
      <i class="iconfont lg-back" v-else></i>
    </button>
    <ul class="pager">
      <li class="number" :class="[currentPage === item ? 'active': '']"
       v-for="item in pages" :key="item" @click.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值