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