国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

基于vue實現(xiàn)分頁/翻頁組件paginator示例

2019-11-19 17:13:23
字體:
供稿:網(wǎng)友

序言

項目需要自己寫了一個基于vue的paginator分享出來,歡迎各路好漢來指教

當(dāng)頁數(shù)小于999(包括999)頁

頁數(shù)大于999頁

首頁或尾頁disabled

10頁之內(nèi)顯示

Usage

參數(shù)

pageCount: 整數(shù),代表總頁數(shù)

監(jiān)聽事件

@togglePage: 監(jiān)聽切換頁面事件,可以獲取到當(dāng)前前往頁的頁數(shù)

父組件調(diào)用方法 index.vue

<template lang="html">  <div>    <paginator :pageCount="pageCount" @togglePage="togglePage($event)"></paginator>  </div></template><script>export default {  data(){    return{      //總頁數(shù)      pageCount: 24    }  },  methods:{    togglePage(indexPage){      //打印出當(dāng)前頁數(shù)      console.log(indexPage);    },  }}</script>

分頁組件 paginator.vue

<template lang="html">  <div class="pagination">    <ul>      <li :class="{disabled: curPage == 1}" @click="prevPage" v-if="pageCount > 1">上一頁</li>      <li :class="{active: curPage == 1}" @click="page(1)">1</li>      <li class="ellipsis" v-show="curPage > 5 && pageCount > 10">...</li>      <li :class="{active: curPage == index+offset}" v-for="(item,index) in middlePages" @click="page(index+offset)">{{index+offset}}</li>      <li class="ellipsis" v-show="curPage < bigLimit && pageCount > 10">...</li>      <li :class="{active: curPage == pageCount}" @click="page(pageCount)" v-if="pageCount > 1">{{pageCount}}</li>      <li :class="{disabled: curPage == pageCount}" @click="nextPage" v-if="pageCount > 1">下一頁</li>    </ul>  </div></template><script>  export default {    props:['pageCount'],    data(){      return {        curPage: 1,      };    },    computed:{      middlePages(){        if(this.pageCount <= 2){          return 0;        }else if(this.pageCount> 2 && this.pageCount <= 10){          return this.pageCount-2;        }else{          return this.curPage > 999 ? 5 : 8;        }      },      bigLimit(){        return this.middlePages > 5 ? this.pageCount-6 : this.pageCount -3;      },      offset(){        if(this.curPage <= 5){          return 2;        }else if(this.curPage >= this.bigLimit){          return this.bigLimit-2;        }else{          return this.middlePages > 5 ? this.curPage-3 : this.curPage-2;        }      }    },    methods:{      page(indexPage){        this.$emit('togglePage',indexPage);        this.curPage = indexPage;      },      prevPage(){        if(this.curPage != 1){          this.page(this.curPage-1);        }      },      nextPage(){        if(this.curPage != this.pageCount){          this.page(this.curPage+1);        }      }    }  };</script><style lang="css" scoped>  @import 'styles/vars.css';  .pagination{    width: 660px;    text-align: center;    ul{      margin: 40px 0 60px 0;      li{        cursor: pointer;        display: inline-block;        padding: 5px 9px;        border: 1px solid #e1e1eb;        margin-right: 5px;        &.active{          background: #4078c0;          color: #fff;        }        &.ellipsis{          border: none;        }        &.disabled{          color: #dcdcdc;        }      }    }  }</style>

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 星子县| 镇安县| 高陵县| 鄄城县| 盘山县| 临邑县| 安溪县| 山西省| 丹寨县| 当涂县| 正蓝旗| 土默特右旗| 汝南县| 郁南县| 措美县| 乌拉特中旗| 桦川县| 岚皋县| 淮阳县| 江油市| 当涂县| 罗田县| 海伦市| 昌吉市| 吕梁市| 内江市| 霍林郭勒市| 江源县| 白水县| 原平市| 雷州市| 依兰县| 新平| 稷山县| 桐城市| 沅江市| 沐川县| 酒泉市| 扶风县| 陆丰市| 河池市|