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 相关文章推荐
经常用到的JavasScript事件的翻译
Apr 09 Javascript
二行代码解决全部网页木马
Mar 28 Javascript
Jquery 实现grid绑定模板
Jan 28 Javascript
jQuery实现的给图片点赞+1动画效果(附在线演示及demo源码下载)
Dec 31 Javascript
利用Angularjs实现幻灯片效果
Sep 07 Javascript
关于javascript事件响应的基础语法总结(必看篇)
Dec 26 Javascript
JS去除字符串中空格的方法
Feb 14 Javascript
详解webpack性能优化——DLL
Oct 20 Javascript
基于jQuery实现的设置文本区域的光标位置
Jun 15 jQuery
运用js实现图层拖拽的功能
May 24 Javascript
Vue动态生成表格的行和列
Jul 18 Javascript
vue-video-player视频播放器使用配置详解
Oct 23 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下删除字符串中HTML标签的函数
2008/08/27 PHP
PHP 判断变量类型实现代码
2009/10/23 PHP
php实现微信公众平台账号自定义菜单类
2014/12/02 PHP
php中如何执行linux命令详解
2018/11/06 PHP
php原生数据库分页的代码实例
2019/02/18 PHP
Yii框架函数简单用法分析
2019/09/09 PHP
cnblogs csdn 代码运行框实现代码
2009/11/02 Javascript
圣诞节Merry Christmas给博客添加浪漫的下雪效果基于jquery实现
2012/12/27 Javascript
JavaScript字符串对象substr方法入门实例(用于截取字符串)
2014/10/16 Javascript
JS中产生标识符方式的演变
2015/06/12 Javascript
jQuery实现垂直半透明手风琴特效代码分享
2015/08/21 Javascript
Ionic默认的Tabs模板使用实例
2016/08/29 Javascript
老生常谈JQuery data方法的使用
2016/09/09 Javascript
js实现5秒倒计时重新发送短信功能
2017/02/05 Javascript
Javascript中八种遍历方法的执行速度深度对比
2017/04/25 Javascript
angular.js中解决跨域问题的三种方式
2017/07/12 Javascript
Node.js Stream ondata触发时机与顺序的探索
2019/03/08 Javascript
axios实现文件上传并获取进度
2020/03/25 Javascript
微信小程序request请求封装,验签代码实例
2019/12/04 Javascript
JavaScript常用工具函数大全
2020/05/06 Javascript
Python中IP地址处理IPy模块的方法
2019/08/16 Python
Python Django2.0集成Celery4.1教程
2019/11/19 Python
Python操作MongoDb数据库流程详解
2020/03/05 Python
利用python控制Autocad:pyautocad方式
2020/06/01 Python
如何基于matlab相机标定导出xml文件
2020/11/02 Python
吃透移动端 1px的具体用法
2019/12/16 HTML / CSS
Html5页面点击遮罩层背景关闭遮罩层
2020/11/30 HTML / CSS
英国著名国际平价时尚男装品牌:Topman
2016/08/27 全球购物
英国和世界各地预订便宜的酒店:LateRooms.com
2019/05/05 全球购物
党员大会主持词
2014/04/02 职场文书
报效祖国演讲稿
2014/09/15 职场文书
党员作风建设整改方案
2014/10/27 职场文书
冰峪沟导游词
2015/02/09 职场文书
2015年话务员工作总结
2015/04/29 职场文书
vue+springboot实现登录验证码
2021/05/27 Vue.js
关于HTML编码导致的乱码问题
2021/09/04 HTML / CSS