vue分頁插件的使用方法
本文實(shí)例為大家分享了vue分頁插件的具體代碼,供大家參考,具體內(nèi)容如下
分頁插件代碼:
<div>
<div class="page">
<div class="pagelist">
<span class="jump" :class="{disabled:pstart}" @click="lessPage()">上一頁</span>
<span v-show="current_page>5" class="jump" @click="jumpPage(1)">1</span>
<span class="ellipsis" v-show="efont">...</span>
<span class="jump" v-for="num in indexs" :class="{bgprimary:current_page==num}"
@click="jumpPage(num)">{{num}}</span>
<span class="ellipsis" v-show="ebehind">...</span>
<span :class="{disabled:pend}" class="jump" @click="addPage()">下一頁</span>
<span v-show="current_page<pages-4" class="jump" @click="jumpPage(pages)">{{pages}}</span>
<#--<span class="jumppoint">跳轉(zhuǎn)到:</span>-->
<#--<span class="jumpinp"><input type="text" v-model="changePage"></span>-->
<#--<span class="jump gobtn" @click="jumpPage(changePage)">GO</span>-->
</div>
</div>
</div>
vue代碼
data: {
current_page: result.resultObj.number + 1, //當(dāng)前頁
pages: result.resultObj.totalPages, //總頁數(shù)
changePage: '',//跳轉(zhuǎn)頁
nowIndex: 0
},
computed: {
show: function () {
return this.pages && this.pages != 1
},
pstart: function () {
return this.current_page == 1;
},
pend: function () {
return this.current_page == this.pages;
},
efont: function () {
if (this.pages <= 7) return false;
return this.current_page > 5
},
ebehind: function () {
if (this.pages <= 7) return false;
var nowAy = this.indexs;
return nowAy[nowAy.length - 1] != this.pages;
},
indexs: function () {
var left = 1,
right = this.pages,
ar = [];
if (this.pages >= 7) {
if (this.current_page > 5 && this.current_page < this.pages -4){
left = Number(this.current_page) - 3;
right = Number(this.current_page) + 3;
} else {
if (this.current_page <= 5) {
left = 1;
right = 7;
} else {
right = this.pages;
left = this.pages - 6;
}
}
}
while (left <= right) {
ar.push(left);
left++;
}
return ar;
},
},
methods: {
jumpPage: function (id) {
if (id <= this.pages && id >= 1) {
this.current_page = id;
loadData(this.current_page - 1, size);
}
},
lessPage: function () {
this.current_page--;
loadData(this.current_page - 1, size);
},
addPage: function () {
this.current_page++;
loadData(this.current_page - 1, size);
}
}
使用說明:
直接拷貝即可使用,只需要修改總頁數(shù)、當(dāng)前頁。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Vue動態(tài)設(shè)置圖片時src不生效的原因及解決方法
這篇文章主要介紹了Vue動態(tài)設(shè)置圖片時src不生效的原因及解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08
vue實(shí)現(xiàn)文字檢索時候?qū)⑺阉鲀?nèi)容標(biāo)紅功能
這篇文章主要介紹了vue中實(shí)現(xiàn)文字檢索時候?qū)⑺阉鲀?nèi)容標(biāo)紅,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-08-08
vue實(shí)現(xiàn)圖片下載點(diǎn)擊按鈕彈出本地窗口選擇自定義保存路徑功能
vue前端實(shí)現(xiàn)前端下載,并實(shí)現(xiàn)點(diǎn)擊按鈕彈出本地窗口,選擇自定義保存路徑,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧2023-12-12
vue v-for循環(huán)重復(fù)數(shù)據(jù)無法添加問題解決方法【加track-by=''索引''】
這篇文章主要介紹了vue v-for循環(huán)重復(fù)數(shù)據(jù)無法添加問題解決方法,結(jié)合實(shí)例形式分析了vue.js通過在v-for循環(huán)中添加track-by='索引'解決重復(fù)數(shù)據(jù)無法添加問題相關(guān)操作技巧,需要的朋友可以參考下2019-03-03
Vue過渡效果之CSS過渡詳解(結(jié)合transition,animation,animate.css)
Vue 在插入、更新或者移除 DOM 時,提供多種不同方式的應(yīng)用過渡效果。本文將從CSS過渡transition、CSS動畫animation及配合使用第三方CSS動畫庫(如animate.css)這三方面來詳細(xì)介紹Vue過渡效果之CSS過渡2020-02-02

