vue分頁元件專案實踐
最近開發後臺專案需要寫一個vue的分頁元件,所以把寫好的元件分享到這個上面加深一下印象:
看了下寫的還是比較多的最開始是父子元件之間的通訊。
父元件container裡面的內容
<template> //模板 <div> <div class="search"> <input type="text" placeholder="請輸入要搜尋的內容"> </div> <div class="content"> <div class="lists"> <ul> <li> <div> <div class="displays"> <p>顯示時間:</p> <p>顯示內容:</p> </div> <ul class="lists"> <li v-for="pages in pagedata"> <p v-text="pages.date"></p> <p v-text="pages.message"></p> </li> </ul> </div> </li> </ul> <div class="page">//這裡面的就是呼叫的pagination的元件 <pagination :total="total" @fetchDatas="fetchDatas"></pagination> </div> </div> </div> </div> </template> <script> //js import pagination from "./pagination.vue";//通過import載入元件 export default{ name: 'container', components: { pagination }, data(){ return { pagination:0, //獲取的頁數 current:0, //當前頁數預設為0 getpage:'', //獲取的接口裡面的資料 pagedata:'', //獲取的頁數裡面的資料 total:'' //獲取的總條數 pageNumber:10 //每頁顯示多少條 } }, munted(){ this.fetchDatas(this.current,this.pageNumber) //呼叫函式把頁數和要顯示的條數傳進去 }, methods:{ fetchDatas:async function (index,pN) { let params={ index:'index', pagesize:'pN' }; const res = await this.http.get(this.api.container,params)//獲取介面資料 this.getpage = res.data.data //賦值 this.pagedata = this.getpage.records //拿到資料介面裡自己想要顯示的 this.total = this.getpage.total //拿到資料的總條數 } } </script> <style> //樣式 樣式就不寫了,身為前端自己除錯就OK了; </style>
這是父元件裡面的介面的呼叫,下面就是子元件裡面需要把點選事件傳給父元件,然後父元件通過子元件傳遞的值來進行一系列的操作;
子元件pagination的內容:
<templete> //模板 <div class='page-warp'> <ul class='pagination'> <li :class="{'disabled':this.current < 1}"> <a href='javascript:;' @click='clickCurrent(current-1)'> 上一頁 </a> </li> <li :class="{'disabled':this.current < 1}"> <a href="javascript:;" @click="clickCurrent(0)" > 1 </a> </li> <li :class="{'disabled':this.current < 1}"> ··· </li> <li v-for="page in pagination"> <a :class="{skin:page == current+1,'disabled':page < current || page > current+2 || page == 1 || page == pagination }" v-text="page" href="javascript:;" @click="clickCurrent(page-1)"> </a> </li> <li :class="{'disabled':this.current < 1}"> ··· </li> <li :class="{'disabled': this.current+1 == pagination}"> <a v-text="pagination" href="javascript:;" @click="clickCurrent(pagination-1)"> </a> </li> <li :class="{'disabled': this.current+1 == pagination}"> <a href="javascript:;" @click="clickCurrent(current+1)"> 下一頁 </a> </li> <li> <a href="javascript:;"> 共<span v-text="pagination"></span>頁 </a> </li> </ul> </div> </templete> <script> //js export default { name:'pagination', props:['total'],//父元件傳過來的總條數 data(){ return { current:0, //當前頁數 pagination:'', //可以分的頁數 pageNum:10, //每頁顯示的條數,預設為10 totals:'' //總條數 } }, watch:{ //這裡用到了watch來監聽初始父元件傳過來的值 total (e) { this.totals = e; this.pagination = Math.ceil(this.totals / this.pageNum);//拿到可以分的頁數 } }, methods:{ //點選事件獲取當前頁數傳給父元件 clickCurrent (index) { if( index < 0 || index > this.pagination - 1 ){ return }else { this.current = index; let data = { index : index, pN : this.pageNum }; this.$emit('fetchDatas',data.index,data.pN);//這裡是關鍵點選事件裡面就是依靠$emit來傳值給父元件的,具體的可以參考vue的api 寫到這裡也基本上就完成了; } } } } </script> <style> //樣式 .pagination > li { display: inline; } .pagination > .disabled > a, .pagination > .disabled > a:hover, .pagination > .disabled > span, .pagination > .disabled > span:hover { color: #777; cursor: not-allowed; } .pagination > li > .skin { color: deepskyblue; } .pagination > li > a, .pagination > li > span { padding: 3px 5px; color: #000; } .disabled { display: none; } </style>
以上就是專案中寫的分頁元件,歡迎大家start,樣式有點簡陋大家湊合這看,相信身為前端的你一定會寫出來狂拽炫酷吊炸天的好看的樣式的~~~
相關推薦
vue分頁元件專案實踐
最近開發後臺專案需要寫一個vue的分頁元件,所以把寫好的元件分享到這個上面加深一下印象: 看了下寫的還是比較多的最開始是父子元件之間的通訊。 父元件container裡面的內容 <template> //
100行程式碼實現一個vue分頁元件
今天用vue來實現一個分頁元件,總體來說,vue實現比較簡單,樣式部分模仿了elementUI。所有程式碼的原始碼可以再github上下載的到:下載地址 先來看一下實現效果: 點選檢視效果 整體思路 我們先看一下使用到的檔案的目錄: 我們在 pageComponentsTe
vue分頁元件
分頁元件接收引數有(pageNum)總頁數,返回父元件引數有(jumpData)頁碼數 實現思路是,先獲取資料的總頁數,把總頁數放入分頁元件裡面初始化按鈕, 每點選頁數按鈕或者上一頁,下一頁都會觸發返回頁碼數的資料給父元件, 父元件才是請求資料,然後渲染列表,實現了分頁效果 &
vue 分頁元件及props傳參
export default { name:'page', props: { // 用於記錄總頁碼,可由父元件傳過來 pageNo: { type: Number, default: 1 }, // 用於記錄當前頁數,這個與父元件進行資料互動來
Vue 分頁元件 v2.0
背景 之前也寫過一個分頁元件,非常簡潔的一個分頁元件。 效果圖: 傳送門 點選預覽 程式碼也很簡單,看看就懂了。當頁數多起來的時候,問題也就來了。 這.......迫不得已,我把頁碼顯示的去掉,就成了 看著是沒啥問題,可是需求方不樂意了。。。 他們
基於Vue.js的表格分頁元件
最近小熙在做Vue有關的專案需要前端分頁外掛,看到篇不錯的,特此轉載分享 有一段時間沒更新文章了,主要是因為自己一直在忙著學習新的東西而忘記分享了,實在慚愧。 這不,大半夜發文更一篇文章,分享一個自己編寫的一個Vue的小元件,名叫BootPage。 不瞭解Vue.js的
分頁元件vue和jsp版本
vue版本 <template> <div class="com-vscroll"> <slot name="mcontent"></slot> <div class="loadcss"> &l
ElementUI分頁元件+Vue
一. ElementUI分頁元件 1 官網 2 入門案例: 第一步:建立vue的基本頁面 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8
整理近期專案——分頁元件+查詢功能+許可權展示3合頁面專案
近期完成小專案中含登入頁、首頁及詳情頁,其中運用到自封裝分頁元件及許可權頁面展示結合查詢功能。話不多說,進主題 login頁 index首頁 這裡先說需求,該介面分3種許可權,第一種、二種為管理員,管理員登入後無法新增資料,查詢條件只有已稽核及未稽核,顯示錶格中備案數量及
vue實現一個分頁元件
Vue.component("page",{ template:"#page", data:function(){ return{ current:1, showItem:5, al
分頁元件——vue
專案開發中,經常會遇到分頁功能,也會經常涉及元件化開發和元件複用,下列用vue對分頁元件進行了簡單封裝,具體程式碼如下: 原始碼: (1)app.vue程式碼段: <template> <div id="app"> <v-pagin
手把手教你使用Vue/React/Angular三大框架開發Pagination分頁元件
DevUI是一支兼具設計視角和工程視角的團隊,服務於華為雲DevCloud平臺和華為內部數箇中後臺系統,服務於設計師和前端工程師。官方網站:devui.designNg元件庫:ng-devui(歡迎Star) 引言 “他在正午、黃昏,在一天裡的許多時刻去感受它、記錄它,
vue 分頁組件
pos ice let ini fun then 樣式 del sele Pagination.vue <template> <div class="pagination"> <span class="total">共{{t
milo的分頁元件的使用
步驟: 1.需要引入milo.js 2.手寫一個分頁的樣式 3.分頁html程式碼 4.分頁js程式碼 <script src="//ossweb-img.qq.com/images/js/mobile_bundle/milo.js"></script>
vue分頁效果(iview)
<template> <div> <Page :total="total" :current="startRow" :page-size="endRow" @on-change="pageChange" @on-page-size-change
Django框架(十五)—— Django分頁元件
Django分頁元件 一、分頁器 資料量大的話,可以分頁獲取,檢視 例如:圖書管理中,如果有成千上萬本書,要是都在一個頁面中渲染出來,會影響頁面美觀,所以就要用分頁器分頁渲染 二、分頁器的使用 基本寫法 基本寫法: 後端: 總資料拿出來 生成分頁器Pagin
Django框架(十四)—— Django分頁元件
Django分頁元件 一、分頁器 資料量大的話,可以分頁獲取,檢視 例如:圖書管理中,如果有成千上萬本書,要是都在一個頁面中渲染出來,會影響頁面美觀,所以就要用分頁器分頁渲染 二、分頁器的使用 基本寫法 基本寫法: 後端: 總資料拿出來 生成分頁器Pagin
angular2分頁元件
建立一個分頁包 pagination,然後在裡面依次建立幾個檔案: page.component.html 分頁元件的標籤內容 page.conponent.ts 分頁元件定義 pagination.ts 分頁元件所需配置資訊的物件
怎樣將分頁元件居中
在網上我們下載的jQuery外掛(分頁),引入的js和css檔案之後,簡單的修改一下jQuery對分頁的顯示要求後,我們可以看到在指定的<div>區域中出現分頁的元件。 <body> <div id="callBackPagination" cla
【EasyUI篇】Pagination分頁元件
微信公眾號: 關注可瞭解更多的教程。問題或建議,請公眾號留言; 17.Pagination分頁元件 注意 這個元件需要配合後臺實現,老規矩,使用SSM JSP檔案 <%-- Created by IntelliJ IDEA.