vue实现分页组件


Posted in Javascript onJune 16, 2020

本文实例为大家分享了vue实现分页组件的具体代码,供大家参考,具体内容如下

<template>
 <div class="pageBox">
 <ul>
  <li v-if="this.condition.pageNo > 1 && this.pages.length > 4" class="sides"><a @click="prePage()"><s class="font_main"></s></a></li>
  <li v-for="(item, index) in pages" :class="{'curtPage': condition.pageNo == item}">
  <a v-if="item" @click="goPage(item)" >
   <s>{{item}}</s>
  </a>
  <a href="javascript:;" rel="external nofollow" v-else>...</a>
  </li>
  <li class="sides" v-if="condition.pageNo < pageCount && this.pageCount > 4"><a @click="nextPage()"><s class="font_main"></s></a></li>
 </ul>
 </div>
</template>

js中代码 page 和condition是由父组件中传过来的参数

<script>
 export default {
 props: {
  page: Object,
  condition: Object
 },
 data () {
  return {
  pageSize: this.condition.pageSize
  }
 },
 computed: {
  pageCount: function () {
  return this.page.totalCount / this.condition.pageSize > 0 ? this.page.totalCount % this.condition.pageSize === 0 ? this.page.totalCount / this.condition.pageSize : Math.ceil(this.page.totalCount / this.condition.pageSize) : 1
  },
  pages () {
  let c = this.condition.pageNo
  let t = this.pageCount
  let arr = []
  if (t === 1) {
   return arr
  }
  if (t <= 4) {
   for (let i = 1; i <= t; i++) {
   arr.push(i)
   }
   return arr
  }
  if (c <= 3) return [1, 2, 3, 0, t]
  if (c >= t - 1) return [1, 0, t - 2, t - 1, t]
//  if (c === 4) return [1, 2, 3, 4, 5, 0, t]
//  if (c === (t - 2)) return [1, 0, t - 3, t - 2, t - 1, t]
  return [1, 0, c - 1, c, c + 1, 0, t]
  }
 },
 methods: {
  goPage (indexPage) {
  if (this.indexPage !== this.condition.pageNo) {
   this.condition.pageNo = indexPage
   this.$emit('search')
  }
  },
  prePage () {
  if (this.condition.pageNo !== 1) {
   this.condition.pageNo--
   this.goPage(this.condition.pageNo)
  }
  },
  nextPage () {
  if (this.condition.pageNo !== this.pageCount) {
   this.condition.pageNo++
   this.goPage(this.condition.pageNo)
  }
  }
 }
 }
</script>

效果图:

vue实现分页组件

vue实现分页组件

vue实现分页组件

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript 学习点滴记录
Apr 24 Javascript
Wordpress ThickBox 添加“查看原图”效果代码
Dec 11 Javascript
jquery中获取元素的几种方式小结
Jul 05 Javascript
jQuery is()函数用法3例
May 06 Javascript
简介JavaScript中Math.LOG10E属性的使用
Jun 14 Javascript
JQuery移动页面开发之屏幕方向改变与滚屏的实现
Dec 03 Javascript
JavaScript模拟数组合并concat
Mar 06 Javascript
jquery事件与绑定事件
Mar 16 Javascript
JavaScript调试之console.log调试的一个小技巧分享
Aug 07 Javascript
JS实现的JSON数组去重算法示例
Apr 11 Javascript
Vue slot用法(小结)
Oct 22 Javascript
vant中的toast轻提示实现代码
Nov 04 Javascript
如何用RxJS实现Redux Form
Dec 29 #Javascript
Vue.js结合bootstrap前端实现分页和排序效果
Dec 29 #Javascript
jQuery实现的鼠标拖动浮层功能示例【拖动div等任何标签】
Dec 29 #jQuery
javascript实现计算指定范围内的质数示例
Dec 29 #Javascript
基于vue.js组件实现分页效果
Dec 29 #Javascript
详解Vue.js v-for不支持IE9的解决方法
Dec 29 #Javascript
jQuery基于随机数解决中午吃什么去哪吃问题示例
Dec 29 #jQuery
You might like
php-accelerator网站加速PHP缓冲的方法
2008/07/30 PHP
用php解析html的实现代码
2011/08/08 PHP
php自动加载机制的深入分析
2013/06/08 PHP
PHP二进制与字符串之间的相互转换教程
2016/10/14 PHP
详解Yii2.0 rules验证规则集合
2017/03/21 PHP
YII框架行为behaviors用法示例
2019/04/26 PHP
解决laravel 表单提交-POST 异常的问题
2019/10/15 PHP
不间断滚动JS打包类,基本可以实现所有的滚动效果,太强了
2007/12/08 Javascript
javascript新手语法小结
2008/06/15 Javascript
文字溢出实现溢出的部分再放入一个新生成的div中具体代码
2013/05/17 Javascript
js数值和和字符串进行转换时可以对不同进制进行操作
2014/03/05 Javascript
jQuery实现仿美橙互联两级导航菜单的方法
2015/03/09 Javascript
jQuery实现文本框输入同步的方法
2015/06/20 Javascript
jquery ajax 如何向jsp提交表单数据
2015/08/23 Javascript
JS实现超简单的汉字转拼音功能示例
2016/12/22 Javascript
详解Angular2表单-模板驱动的表单(Template-Driven Forms)
2017/08/04 Javascript
JS数组交集、并集、差集的示例代码
2017/08/23 Javascript
JS switch判断 三目运算 while 及 属性操作代码
2017/09/03 Javascript
Element-UI Table组件上添加列拖拽效果实现方法
2018/04/14 Javascript
用Python和MD5实现网站挂马检测程序
2014/03/13 Python
Python DataFrame设置/更改列表字段/元素类型的方法
2018/06/09 Python
在windows下使用python进行串口通讯的方法
2019/07/02 Python
python elasticsearch从创建索引到写入数据的全过程
2019/08/04 Python
PyTorch中常用的激活函数的方法示例
2019/08/20 Python
python中struct模块之字节型数据的处理方法
2019/08/27 Python
python实现简单图书管理系统
2019/11/22 Python
Python faker生成器生成虚拟数据代码实例
2020/07/20 Python
Appium+Python实现简单的自动化登录测试的实现
2021/01/26 Python
网络艺术零售业的先驱者:artrepublic
2017/09/26 全球购物
英国马莎百货印度官网:Marks & Spencer印度
2020/10/08 全球购物
家长给孩子的评语
2014/01/30 职场文书
物业管理毕业生的自我评价
2014/02/17 职场文书
乡镇消防工作实施方案
2014/03/27 职场文书
导师工作推荐信范文
2014/05/17 职场文书
百日安全生产活动总结
2014/07/05 职场文书
领导干部个人对照检查材料(群众路线)
2014/09/26 职场文书