欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue中ElementUI分頁組件Pagination的使用方法

 更新時間:2021年05月31日 10:08:44   作者:G.E.M.千百度  
這篇文章主要為大家詳細介紹了Vue中ElementUI分頁組件Pagination的使用,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

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

一、概要

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

二、實現(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, // 第幾頁
        pageSize: 10, // 每頁多少條
        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、后端分頁的實現(xiàn)

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

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

3、前端分頁的實現(xiàn)

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

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

/**
     * 分頁數(shù)據(jù)處理
     * @param data [Array] 需要分頁的數(shù)據(jù)
     * @param num [Number] 當(dāng)前第幾頁
     * @param size [Number] 每頁顯示多少條
*/
    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
    }
    /**
     * 分頁數(shù)據(jù)處理
     * @param data [Array] 需要分頁的數(shù)據(jù)
     * @param num [Number] 當(dāng)前第幾頁
     * @param size [Number] 每頁顯示多少條
     */
    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é):無論是前端分頁和還是后端分頁,最終都需要拿到兩個參數(shù):pageNum(當(dāng)前頁)、pageSize(每頁多少條)。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue實現(xiàn)下載文件流完整前后端代碼

    vue實現(xiàn)下載文件流完整前后端代碼

    這篇文章主要為大家詳細介紹了vue實現(xiàn)下載文件流完整前后端代碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • Vue微信公眾號網(wǎng)頁分享的示例代碼

    Vue微信公眾號網(wǎng)頁分享的示例代碼

    這篇文章主要介紹了Vue微信公眾號網(wǎng)頁分享的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • Vue實現(xiàn)高德坐標轉(zhuǎn)GPS坐標功能的示例詳解

    Vue實現(xiàn)高德坐標轉(zhuǎn)GPS坐標功能的示例詳解

    生活中常用的幾種坐標有:WGS-84、GCJ-02與BD-09。本文將利用Vue實現(xiàn)高德坐標轉(zhuǎn)GPS坐標功能,即實現(xiàn)GCJ-02坐標轉(zhuǎn)換成WGS-84坐標,需要的可以參考一下
    2022-04-04
  • vue調(diào)試工具vue-devtools的安裝全過程

    vue調(diào)試工具vue-devtools的安裝全過程

    這篇文章主要介紹了vue調(diào)試工具vue-devtools的安裝全過程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • vue服務(wù)器代理proxyTable配置如何解決跨域

    vue服務(wù)器代理proxyTable配置如何解決跨域

    這篇文章主要介紹了vue服務(wù)器代理proxyTable配置如何解決跨域問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • 前端Vue.js實現(xiàn)json數(shù)據(jù)導(dǎo)出到doc

    前端Vue.js實現(xiàn)json數(shù)據(jù)導(dǎo)出到doc

    這篇文章主要介紹了前端Vue.js實現(xiàn)json數(shù)據(jù)導(dǎo)出到doc,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • VUE3使用JSON編輯器的詳細圖文教程

    VUE3使用JSON編輯器的詳細圖文教程

    最近項目中有用到j(luò)son編輯器,我選用了這款vue的編輯器,看起來也是比較簡潔,接下來就具體介紹一下它,下面這篇文章主要給大家介紹了關(guān)于VUE3使用JSON編輯器的詳細圖文教程,需要的朋友可以參考下
    2023-04-04
  • vue2源碼解析之全局API實例詳解

    vue2源碼解析之全局API實例詳解

    全局API并不在構(gòu)造器里,而是先聲明全局變量或者直接在Vue上定義一些新功能,Vue內(nèi)置了一些全局API,下面這篇文章主要給大家介紹了關(guān)于vue2源碼解析之全局API的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • Vue源碼探究之虛擬節(jié)點的實現(xiàn)

    Vue源碼探究之虛擬節(jié)點的實現(xiàn)

    這篇文章主要介紹了Vue源碼探究之虛擬節(jié)點的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-04-04
  • vue router仿天貓底部導(dǎo)航欄功能

    vue router仿天貓底部導(dǎo)航欄功能

    這篇文章主要介紹了vue router仿天貓底部導(dǎo)航欄功能,需要的朋友可以參考下
    2017-10-10

最新評論