电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

vue實現前端分頁完整代碼

瀏覽:4日期:2023-01-12 16:17:50

本文實例為大家分享了vue實現前端分頁的具體代碼,供大家參考,具體內容如下

首先,做出來的效果如圖所示,具體的Ajax請求數據可以寫在點擊函數中分頁效果算是比較費腦子的,里面計算有些麻煩,本文上完整代碼,一起學習進步

vue實現前端分頁完整代碼

“上一頁”寫兩個li元素,如果已經是第一頁,那么就禁止鼠標點擊,如果不是就curr減減,并且可以點擊 同理“下一頁”也一樣 中間部分是通過indexs循環,indexs通過computed計算得出

<div class='page-bar'> <ul> <li v-if='cur>1'><a v-on:click='cur--,pageClick()'>上一頁</a></li> <li v-if='cur==1'><a class='banclick'>上一頁</a></li> <!--當前頁背景色為藍色--> <li v-for='index in indexs' v-bind:class='{ ’active’: cur == index}'> <a v-on:click='btnClick(index)'>{{ index }}</a> </li> <li v-if='cur<all'><a v-on:click='cur++,pageClick()'>下一頁</a></li> <li v-if='cur == all'><a class='banclick'>下一頁</a></li> <li><a>共<i>{{all}}</i>頁</a></li> </ul></div>

難點就是IF嵌套語句

1、每次顯示5個數據,如果大于3,范圍從3到6,如果到達7,那么下邊加2變成9,已經超過最大的范圍值,所以最大范圍到62、如果是大于6,那么最大值就是最大值,最小變成all-43、如果3以內,默認不跳動

var pageBar = new Vue({ el: ’.page-bar’, data: { all: 8, //總頁數 cur: 1//當前頁碼 }, watch: { cur: function(oldValue , newValue){ console.log(arguments); } }, methods: { btnClick: function(data){ if(data != this.cur){this.cur = data; } }, pageClick: function(){ console.log(’現在在’+this.cur+’頁’); } }, computed: { indexs: function(){ var left = 1; var right = this.all; var ar = []; if(this.all>= 5){ //這里最大范圍從3到6,如果到達7,那么下邊加2變成9,已經超過最大的范圍值 if(this.cur > 3 && this.cur < this.all-1){ //以4為參考基準,左面加2右邊加2 left = this.cur - 2 right = this.cur + 2 }else{if(this.cur<=3){ left = 1 right = 5}else{ right = this.all left = this.all -4} } } while (left <= right){ ar.push(left) left ++ } console.log(ar); return ar } }})

全部代碼:

<!DOCTYPE html><html><head><meta name='viewport' content='width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no'/><meta charset='utf-8'><title></title><meta name='keywords' content='' /><meta name='description' content='' /><script type='text/javascript' src='http://www.hdgsjgj.cn/bcjs/js/vue.min.js'></script><style>.page-bar{ margin:40px;}ul,li{ margin: 0px; padding: 0px;}li{ list-style: none}.page-bar li:first-child>a { margin-left: 0px}.page-bar a{ border: 1px solid #ddd; text-decoration: none; position: relative; float: left; padding: 6px 12px; margin-left: -1px; line-height: 1.42857143; color: #337ab7; cursor: pointer}.page-bar a:hover{ background-color: #eee;}.page-bar a.banclick{ cursor:not-allowed;}.page-bar .active a{ color: #fff; cursor: default; background-color: #337ab7; border-color: #337ab7;}.page-bar i{ font-style:normal; color: #d44950; margin: 0px 4px; font-size: 12px;}</style></head><body> <div class='page-bar'> <ul> <li v-if='cur>1'><a v-on:click='cur--,pageClick()'>上一頁</a></li> <li v-if='cur==1'><a class='banclick'>上一頁</a></li> <!--當前頁背景色為藍色--> <li v-for='index in indexs' v-bind:class='{ ’active’: cur == index}'> <a v-on:click='btnClick(index)'>{{ index }}</a> </li> <li v-if='cur<all'><a v-on:click='cur++,pageClick()'>下一頁</a></li> <li v-if='cur == all'><a class='banclick'>下一頁</a></li> <li><a>共<i>{{all}}</i>頁</a></li> </ul></div><script type='text/javascript'>var pageBar = new Vue({ el: ’.page-bar’, data: { all: 8, //總頁數 cur: 1//當前頁碼 }, watch: { cur: function(oldValue , newValue){ console.log(arguments); } }, methods: { btnClick: function(data){ if(data != this.cur){this.cur = data; } }, pageClick: function(){ console.log(’現在在’+this.cur+’頁’); } }, computed: { indexs: function(){ var left = 1; var right = this.all; var ar = []; if(this.all>= 5){ //這里最大范圍從3到6,如果到達7,那么下邊加2變成9,已經超過最大的范圍值 if(this.cur > 3 && this.cur < this.all-1){ //以4為參考基準,左面加2右邊加2 left = this.cur - 2 right = this.cur + 2 }else{if(this.cur<=3){ left = 1 right = 5}else{ right = this.all left = this.all -4} } } while (left <= right){ ar.push(left) left ++ } console.log(ar); return ar } }})</script></body></html>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Vue
相關文章:
主站蜘蛛池模板: 手板_手板模型制作_cnc手板加工厂-东莞天泓 | 通风天窗,通风气楼,屋顶通风天窗,屋顶通风天窗公司 | 昆山新莱洁净应用材料股份有限公司-卫生级蝶阀,无菌取样阀,不锈钢隔膜阀,换向阀,离心泵 | 长城人品牌官网 | 列管冷凝器,刮板蒸发器,外盘管反应釜厂家-无锡曼旺化工设备有限公司 | 视频直播 -摄影摄像-视频拍摄-直播分发 | 全自动定氮仪-半自动凯氏定氮仪厂家-祎鸿仪器 | 外观设计_设备外观设计_外观设计公司_产品外观设计_机械设备外观设计_东莞工业设计公司-意品深蓝 | 北京租车公司_汽车/客车/班车/大巴车租赁_商务会议/展会用车/旅游大巴出租_北京桐顺创业租车公司 | 成都顶呱呱信息技术有限公司-贷款_个人贷款_银行贷款在线申请 - 成都贷款公司 | 上海律师咨询_上海法律在线咨询免费_找对口律师上策法网-策法网 广东高华家具-公寓床|学生宿舍双层铁床厂家【质保十年】 | 咖啡加盟,咖啡店加盟连锁品牌-卡小逗| 垃圾处理设备_餐厨垃圾处理设备_厨余垃圾处理设备_果蔬垃圾处理设备-深圳市三盛环保科技有限公司 | 丹佛斯变频器-丹佛斯压力开关-变送器-广州市风华机电设备有限公司 | 儿童语言障碍训练-武汉优佳加感统文化发展有限公司 | 沈阳液压泵_沈阳液压阀_沈阳液压站-沈阳海德太科液压设备有限公司 | POS机办理_个人pos机免费领取-银联pos机申请首页 | 医学模型生产厂家-显微手术模拟训练器-仿真手术模拟训练系统-北京医教科技 | 企业管理培训,企业培训公开课,企业内训课程,企业培训师 - 名课堂企业管理培训网 | 空气弹簧|橡胶气囊|橡胶空气弹簧-上海松夏减震器有限公司 | 广东健伦体育发展有限公司-体育工程配套及销售运动器材的体育用品服务商 | WTB5光栅尺-JIE WILL磁栅尺-B60数显表-常州中崴机电科技有限公司 | 回转支承-转盘轴承-回转驱动生产厂家-洛阳隆达轴承有限公司 | 鑫达滑石-辽宁鑫达滑石集团| 档案密集柜_手动密集柜_智能密集柜_内蒙古档案密集柜-盛隆柜业内蒙古密集柜直销中心 | pbootcms网站模板|织梦模板|网站源码|jquery建站特效-html5模板网 | 集菌仪_智能集菌仪_全封闭集菌仪_无菌检查集菌仪厂家-那艾 | 食品无尘净化车间,食品罐装净化车间,净化车间配套风淋室-青岛旭恒洁净技术有限公司 | 西安中国国际旅行社(西安国旅) | 广州企亚 - 数码直喷、白墨印花、源头厂家、透气无手感方案服务商! | 武汉刮刮奖_刮刮卡印刷厂_为企业提供门票印刷_武汉合格证印刷_现金劵代金券印刷制作 - 武汉泽雅印刷有限公司 | 国际金融网_每日财经新资讯网| 北京易通慧公司从事北京网站优化,北京网络推广、网站建设一站式服务商-北京网站优化公司 | 小型数控车床-数控车床厂家-双头数控车床| 武汉天安盾电子设备有限公司 - 安盾安检,武汉安检门,武汉安检机,武汉金属探测器,武汉测温安检门,武汉X光行李安检机,武汉防爆罐,武汉车底安全检查,武汉液体探测仪,武汉安检防爆设备 | YT保温材料_YT无机保温砂浆_外墙保温材料_南阳银通节能建材高新技术开发有限公司 | 氧化铁红厂家-淄博宗昂化工 | 涂层测厚仪_光泽度仪_uv能量计_紫外辐照计_太阳膜测试仪_透光率仪-林上科技 | 油缸定制-液压油缸厂家-无锡大鸿液压气动成套有限公司 | 小程序开发公司-小程序制作-微信小程序开发-小程序定制-咏熠软件 | 大白菜官网,大白菜winpe,大白菜U盘装系统, u盘启动盘制作工具 |