av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Vue中ElementUI分頁(yè)組件Pagination的使用方法

瀏覽:2日期:2022-09-29 10:31:01

Vue中ElementUI分頁(yè)組件Pagination的使用,供大家參考,具體內(nèi)容如下

一、概要

ElementUI 提供了 el-pagination 組件,只要配置相應(yīng)得參數(shù)和事件,即可實(shí)現(xiàn)分頁(yè)。

Vue中ElementUI分頁(yè)組件Pagination的使用方法

二、實(shí)現(xiàn)

1、基本用法

<div class='pagination'> <el-pagination background layout='total, sizes, prev, pager, next, jumper' :current-page='tablePage.pageNum' :page-size='tablePage.pageSize' :page-sizes='pageSizes' :total='tablePage.total' @size-change='handleSizeChange' @current-change='handlePageChange' /></div>

data() { return { tablePage: {pageNum: 1, // 第幾頁(yè)pageSize: 10, // 每頁(yè)多少條total: 0 // 總記錄數(shù) }, pageSizes: [10, 20, 30] } }, methods: { handlePageChange(currentPage) { this.tablePage.pageNum = currentPage // 在此刷新數(shù)據(jù) }, handleSizeChange(pageSize) { this.tablePage.pageSize = pageSize // 在此刷新數(shù)據(jù) } }

2、后端分頁(yè)的實(shí)現(xiàn)

實(shí)現(xiàn)思路:向后臺(tái)發(fā)送請(qǐng)求,傳入pageNum、pageSize兩參數(shù),直接得到相應(yīng)的分頁(yè)數(shù)據(jù)。

// 獲取數(shù)據(jù)getData() { let param = {pageNum: this.tablePage.pageNum,pageSize: this.tablePage.pageSize } // 請(qǐng)求后臺(tái)接口函數(shù) getDataApi(param, { loading: true }).then(res => {// 后臺(tái)返回?cái)?shù)據(jù)this.list = res.data.listthis.tablePage.total = res.data.total }) },

3、前端分頁(yè)的實(shí)現(xiàn)

實(shí)現(xiàn)思路:向后臺(tái)發(fā)送請(qǐng)求,獲取全部數(shù)據(jù),前端通過(guò)pageNum、pageSize對(duì)數(shù)據(jù)進(jìn)行處理,最終得到相應(yīng)的分頁(yè)數(shù)據(jù)。以下是處理數(shù)據(jù)得兩種方法:

1、利用 Array.slice 截取想要的數(shù)組片段( 此方法要考慮 總頁(yè)數(shù)為“1” 和 尾頁(yè) 的情況)2、利用 Array.filter 過(guò)濾出想要的數(shù)組片段(此方法無(wú)需考慮 總頁(yè)數(shù)為“1” 和 尾頁(yè) 的情況,只要滿(mǎn)足條件即可

/** * 分頁(yè)數(shù)據(jù)處理 * @param data [Array] 需要分頁(yè)的數(shù)據(jù) * @param num [Number] 當(dāng)前第幾頁(yè) * @param size [Number] 每頁(yè)顯示多少條*/ getList(data, num, size) { let list, total, start, end, isFirst, isLast total = data.length isFirst = total < size isLast = Math.ceil(total / size) === num start = (num - 1) * size end = isFirst || isLast ? start + (total % size) : start + size list = data.slice(start, end) list.forEach((item, index) => {item.seq = index + start }) return list } /** * 分頁(yè)數(shù)據(jù)處理 * @param data [Array] 需要分頁(yè)的數(shù)據(jù) * @param num [Number] 當(dāng)前第幾頁(yè) * @param size [Number] 每頁(yè)顯示多少條 */ getList(data, num, size) { let list, start, end start = (num - 1) * size end = start + size list = data.filter((item, index) => {return index >= start && index < end }) list.forEach((item, index) => {item.seq = index + start }) return list}

總結(jié):無(wú)論是前端分頁(yè)和還是后端分頁(yè),最終都需要拿到兩個(gè)參數(shù):pageNum(當(dāng)前頁(yè))、pageSize(每頁(yè)多少條)。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 999久久久| 国产无限资源 | 国产黄色大片 | 97精品国产97久久久久久免费 | 黄色录像免费看 | 午夜视频在线免费观看 | 久久久久久国产精品 | 国产成人97精品免费看片 | 国产做爰免费观看视频 | 国产精品成人国产乱一区 | www亚洲| 国产在线观看一区二区三区 | 婷婷在线播放 | 欧美1级片 | 午夜精品国产精品大乳美女 | 免费一级黄色片 | 亚洲免费精品视频 | 成人香蕉网 | www.日本在线观看 | 久久不射网| 久久99热这里只频精品6学生 | 成人黄色一级片 | 日本美女黄色 | 久久久久久网 | 欧美激情一区 | 亚洲一区二区在线播放 | 日韩精品视频免费在线观看 | 欧美精品一二区 | 91精品在线免费观看 | 欧美精品日韩 | 亚洲免费观看视频 | 久久中文字幕视频 | 日韩久久久久久 | 久久精品中文 | 国产在线h | 欧美日韩综合网 | 欧美日韩一二区 | 国产欧美久久久 | 毛片在线观看视频 | 天天插天天射 | 亚洲三级小说 |