vue的一個(gè)分頁(yè)組件的示例代碼
分頁(yè)組件在項(xiàng)目中經(jīng)常要用到之前一直都是在網(wǎng)上找些jq的控件來(lái)用(逃..),最近幾個(gè)項(xiàng)目用上vue了項(xiàng)目又剛好需要一個(gè)分頁(yè)的功能。具體如下:
文件page.vue為一個(gè)pc端的分頁(yè)組件,基礎(chǔ)的分頁(yè)功能都有,基本的思路是,頁(yè)面是用數(shù)據(jù)來(lái)展示的,那就直接操作相關(guān)數(shù)據(jù)來(lái)改變視圖
Getting started
import Page from './page.vue' 從目錄引入該文件,在父組件注冊(cè)使用
<page :total='total' :current-index="currentIndex" :listLen='listLen' @getPage='getPage'></page>
total:總頁(yè)碼
currentIndex:當(dāng)前頁(yè)碼
listLen:頁(yè)面ui要顯示幾個(gè)列表頁(yè)
getPage: page組件把每個(gè)事件的頁(yè)碼發(fā)送給父組件,用來(lái)向后臺(tái)發(fā)送相關(guān)請(qǐng)求來(lái)展示內(nèi)容
about page.vue
html 部分
<ul class="item" v-show="arr.length"> <li @click="start">首頁(yè)</li> <li @click="pre"><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><<</a></li> 上一列表頁(yè) <li @click="currentPre"><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><</a></li> 點(diǎn)解當(dāng)前列表頁(yè)上一頁(yè) <li v-for="(item,index) in arr" :class="{active: item===num}" @click="getPage(item)">{{item}}</li> <li @click="currentNext"><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >></a></li> 點(diǎn)解當(dāng)前列表頁(yè)下一頁(yè) <li @click="next"><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >>></a></li> 下一列表頁(yè) <li @click="end">尾頁(yè)</li> </ul>
相關(guān)數(shù)據(jù)說(shuō)明
data() { return { num: Number, //表示當(dāng)前頁(yè)碼高亮 arr: [], //頁(yè)面顯示的數(shù)組 page: Number, //一頁(yè)顯示多少個(gè),可以自定義,不能大于總頁(yè)碼 Remainder:Number, //是否整除 merchant:Number, // 比較總頁(yè)數(shù)和page頁(yè) }; }, props: { //分頁(yè)的總數(shù) total: { type: Number, default: 5 }, //當(dāng)前頁(yè) currentIndex: { type: Number, default: 1 }, //一個(gè)列表頁(yè)顯示多少頁(yè)碼 listLen:{ type: Number, default: 5 } },
methods 里面的相關(guān)事件,思路主要是判斷當(dāng)前列表頁(yè)的第一項(xiàng)和最后一項(xiàng).通過(guò)循環(huán)來(lái)該變arr成員的值
bash
# install dependencies npm install # serve with hot reload at localhost:8080 npm run dev # build for production with minification npm run build
之前用ember.js寫(xiě)過(guò)一個(gè)類(lèi)似組件,現(xiàn)在基于vue2.0封裝一個(gè),方便以后用于不同項(xiàng)目,可以拿來(lái)直接使用.
小總結(jié):之前也接觸過(guò)ng4,發(fā)現(xiàn)這些相似框架排除過(guò)渡動(dòng)畫(huà),頁(yè)面展示都是通過(guò)后臺(tái)發(fā)過(guò)來(lái)或者前端模擬的數(shù)據(jù)來(lái) 渲染頁(yè)面,當(dāng)然這只是相通的一小部分,也是這類(lèi)框架基本思想。
代碼地址:https://github.com/hgchenhao/component
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
如何刪除vue項(xiàng)目下的node_modules文件夾
這篇文章主要介紹了如何刪除vue項(xiàng)目下的node_modules文件夾,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09?用Vue?Demi?構(gòu)建同時(shí)兼容Vue2與Vue3組件庫(kù)
這篇文章主要介紹了?用Vue?Demi?構(gòu)建同時(shí)兼容Vue2與Vue3組件庫(kù),我們通過(guò)考慮其功能、工作原理以及如何開(kāi)始使用它來(lái)了解?Vue?Demi,下面我們一起進(jìn)入文章學(xué)起來(lái)吧2022-02-02vue倒計(jì)時(shí)刷新頁(yè)面不會(huì)從頭開(kāi)始的解決方法
在本篇文章里小編給大家整理的是關(guān)于vue倒計(jì)時(shí)刷新頁(yè)面不會(huì)從頭開(kāi)始的解決方法,需要的朋友們參考下。2020-03-03vuejs手把手教你寫(xiě)一個(gè)完整的購(gòu)物車(chē)實(shí)例代碼
這篇文章主要介紹了vuejs-手把手教你寫(xiě)一個(gè)完整的購(gòu)物車(chē)實(shí)例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07vue3中storeToRefs讓store中的結(jié)構(gòu)出來(lái)的數(shù)據(jù)也能變成響應(yīng)式(推薦)
這篇文章主要介紹了vue3中storeToRefs讓store中的結(jié)構(gòu)出來(lái)的數(shù)據(jù)也能變成響應(yīng)式,本文通過(guò)實(shí)例代碼給大家介紹的分需要的朋友可以參考下2024-09-09Vue?Router?實(shí)現(xiàn)登錄后跳轉(zhuǎn)到之前想要訪(fǎng)問(wèn)的頁(yè)面
這篇文章主要介紹了Vue?Router?實(shí)現(xiàn)登錄后跳轉(zhuǎn)到之前相要訪(fǎng)問(wèn)的頁(yè)面,本文僅演示路由跳轉(zhuǎn)和導(dǎo)航守衛(wèi)相關(guān)代碼的實(shí)現(xiàn),不包含具體的權(quán)限驗(yàn)證和登錄請(qǐng)求,需要的朋友可以參考下2022-12-12Vue之el-select結(jié)合v-if動(dòng)態(tài)控制template顯示隱藏方式
這篇文章主要介紹了Vue之el-select結(jié)合v-if動(dòng)態(tài)控制template顯示隱藏方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04解讀element ui el-row標(biāo)簽中的gutter用法
這篇文章主要介紹了解讀element ui el-row標(biāo)簽中的gutter用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-08-08vue項(xiàng)目實(shí)戰(zhàn)之圓柱狀水波效果實(shí)現(xiàn)
最近工作中實(shí)現(xiàn)的一個(gè)效果不錯(cuò),分享給大家,下面這篇文章主要給大家介紹了關(guān)于vue項(xiàng)目實(shí)戰(zhàn)之圓柱狀水波效果實(shí)現(xiàn)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-12-12vuex 多模塊時(shí) 模塊內(nèi)部的mutation和action的調(diào)用方式
這篇文章主要介紹了vuex 多模塊時(shí) 模塊內(nèi)部的mutation和action的調(diào)用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-07-07