利用vue.js实现数据库分页,供大家参考,具体内容如下
最新项目有一个分页功能,画面风格很简朴给的样图就用【1】表示页码了, 因此,我没有上网上找插件,自己简单的做了一个。作为菜鸟,代码可能有点青涩,请见谅。
除了vue我还引用了Bootstrap的类和图标
html
<div class="paging">
<ul class="pagination" style="margin: 13px">
<li class="page-li" v-if="page>1"><a href="javascript:void(0);" @click="firstpg()" style="border: 0px;"><span class="glyphicon glyphicon-step-backward"></span></a></li>
<li class="page-li" v-else></li>
<li class="page-li" v-if="page>1"><a href="javascript:void(0);" @click="up()" style="border: 0px;"><span class="glyphicon glyphicon-chevron-left"></span></a></li>
<li class="page-li" v-else></li>
<li class="page-li" v-if="showup>0"><a href="javascript:void(0);" @click="showmore1()" style="border: 0px;">...</a></li>
<li class="page-li" v-else></li>
<li v-for="i in pages" v-if="i>showup&&i<showdown"><a href="javascript:void(0);" @click="setpage(i)" :class="{colorred:i==page}" style="border: 0px;">[{{i}}]</a></li>
<li class="page-li" v-if="showdown<=pages"><a href="javascript:void(0);" @click="showmore2()" style="border: 0px;">...</a></li>
<li class="page-li" v-else></li>
<li class="page-li" v-if="page<pages"><a href="javascript:void(0);" @click="down()" style="border: 0px;"><span class="glyphicon glyphicon-chevron-right"></span></a></li>
<li class="page-li" v-else></li>
<li class="page-li" v-if="page<pages"><a href="javascript:void(0);" @click="lastpg()" style="border: 0px;"><span class="glyphicon glyphicon-step-forward"></span></a></li>
<li class="page-li" v-else></li>
</ul>
</div>
js
const listData = {
initcount : 0,
//选中的页号
page : 1,
//显示页码下限
showdown : 0,
//显示页码上限
showup : 0,
};
$(function() {
new Vue({
el : ‘#manageArea',
data : listData,
methods : {
setpage : setpage,
up : up,
down : down,
firstpg : firstpg,
lastpg : lastpg,
showmore1 : showmore1,
showmore2 : showmore2,
},
});
setShowdown();
setShowup();
initAjax();
});
//选中的页号
function setpage(i) {
listData.page = i;
setShowdown();
setShowup();
initAjax();
}
//向上翻一页
function up() {
if (listData.page > 1) {
listData.page = listData.page - 1;
setShowdown();
setShowup();
initAjax();
}
}
//向下翻一页
function down() {
if (listData.page < listData.pages) {
listData.page = listData.page + 1;
setShowdown();
setShowup();
initAjax();
}
}
//直接到首页
function firstpg() {
if (listData.page > 1) {
listData.page = 1;
setShowdown();
setShowup();
initAjax();
}
}
//直接到尾页
function lastpg() {
if (listData.page < listData.pages) {
listData.page = listData.pages;
setShowdown();
setShowup();
initAjax();
}
}
//往前翻三页
function showmore1() {
listData.showdown -= 3;
listData.showup -= 3;
}
//往后翻三页
function showmore2() {
listData.showdown += 3;
listData.showup += 3;
}
//设置显示的页码下限
function setShowdown() {
listData.showdown = listData.page + 2;
}
//设置显示的页码上限
function setShowup() {
listData.showup = listData.page - 2;
}
这样通过把选中的页码传到后台 计算出 limit 开始条数的值 如显示20条 开始值就是 (page-1)*20;就可以了。从代码到描述都很简陋,还请大家对我的错误不足进行指正。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
标签:
vue.js,分页查询
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“基于vue.js实现分页查询功能”评论...
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。
更新动态
2025年10月30日
2025年10月30日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]
