最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue分頁組件實例代碼

 更新時間:2021年09月26日 11:17:04   投稿:lijiao  
這篇文章主要為大家詳細介紹了Vue分頁組件的實例代碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Vue分頁組件的具體代碼,供大家參考,具體內(nèi)容如下

當前組件依賴bootstrap樣式,使用前請先引用相關(guān)css。

Vue.component('pagination', {
  template: `<nav aria-label="Page navigation">
    <ul class="pagination">
      <li :class="{'disabled': pageNum == 1}"><a href="#" v-on:click.prevent="turnToPage(1)" title="首頁" aria-label="首頁"><i class="fa fa-fast-backward"></i></a></li>
      <li :class="{'disabled': pageNum == 1}"><a href="#" v-on:click.prevent="turnToPage(pageNum - 1)" title="上一頁" aria-label="上一頁"><i class="fa fa-backward"></i></a></li>
      <li v-if="pageNum > 4"><a href="#" v-on:click.prevent="turnToPage(pageNum - 4)">...</a></li>
      <li v-if="pageNum <= 4 && pageNum >1"><a href="#" v-on:click.prevent="turnToPage(1)">1</a></li>
      <li v-if="pageNum - 3 > 1"><a href="#" v-on:click.prevent="turnToPage(pageNum - 3)">{{pageNum-3}}</a></li>
      <li v-if="pageNum - 2 > 1"><a href="#" v-on:click.prevent="turnToPage(pageNum - 2)">{{pageNum-2}}</a></li>
      <li v-if="pageNum - 1 > 1"><a href="#" v-on:click.prevent="turnToPage(pageNum - 1)">{{pageNum-1}}</a></li>
      <li class="active"><a href="#" v-on:click.prevent="turnToPage(pageNum)">{{pageNum}}</a></li>
      <li v-if="pageNum + 1 < pageTotal"><a href="#" v-on:click.prevent="turnToPage(pageNum + 1)">{{pageNum+1}}</a></li>
      <li v-if="pageNum + 2 < pageTotal"><a href="#" v-on:click.prevent="turnToPage(pageNum + 2)">{{pageNum+2}}</a></li>
      <li v-if="pageNum + 3 < pageTotal"><a href="#" v-on:click.prevent="turnToPage(pageNum + 3)">{{pageNum+3}}</a></li>
      <li v-if="pageNum >= pageTotal - 4 && pageNum < pageTotal"><a href="#" v-on:click.prevent="turnToPage(pageTotal)">{{pageTotal}}</a></li>
      <li v-if="pageNum < pageTotal - 4"><a href="#" v-on:click.prevent="turnToPage(pageNum + 4)">...</a></li>
      <li :class="{'disabled': pageNum == pageTotal}"><a href="#" v-on:click.prevent="turnToPage(pageNum + 1)" title="下一頁" aria-label="下一頁"><i class="fa fa-forward"></i></a></li>
      <li :class="{'disabled': pageNum == pageTotal}"><a href="#" v-on:click.prevent="turnToPage(pageTotal)" title="尾頁" aria-label="尾頁"><i class="fa fa-fast-forward"></i></a></li>
    </ul>
  </nav>`,
  props: {
    pageNum: Number,
    pageSize: Number,
    totalItemCount: Number,
  },
  computed: {
    pageTotal: function () {
      return Math.ceil(this.totalItemCount / this.pageSize)
    }
  },
  methods: {
    turnToPage: function (num) {
      if (num > this.pageTotal || num <= 0) {
        //toastr.error(`當前頁碼超出了范圍。頁碼:${num}`, '錯誤')
        return false
      }
      this.$emit('change', num)
    }
  }
})

props定義三個屬性:當前頁碼,當前頁顯示數(shù)量,總數(shù)量

computed定義了一個計算方法:獲取總數(shù)量/當前頁顯示數(shù)量,向上取整,默認取10個

methods定義了一個根據(jù)頁碼跳轉(zhuǎn)方法:最終用于觸發(fā)change事件,$emit用于拋出自定義事件,組件外可以捕獲當前定義的change事件

html組件顯示:

復制代碼 代碼如下:
<pagination :page-num="criteria.page.num" :page-size="criteria.page.size" :total-item-count="itemsCount" v-on:change="skiptoPage"></pagination>

以上的值為自己傳入的值

let vm = new Vue({
  el: '#app',
  data: {
    criteria: {
      keyword: '',
      page: { num: 1, size: 10 }
    },
    itemsCount: 0
  },
  methods: {  
    skiptoPage: function (num) {  
        this.criteria.page.num = num;
    }
  }
}); 

以上方法是自定義事件change的方法,你們可以自己去修改內(nèi)容。

效果圖

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

相關(guān)文章

  • Vue使用視頻作為網(wǎng)頁背景的實現(xiàn)指南

    Vue使用視頻作為網(wǎng)頁背景的實現(xiàn)指南

    在現(xiàn)代網(wǎng)頁設(shè)計中,視頻背景逐漸成為一種流行的設(shè)計趨勢,它不僅能夠提升網(wǎng)頁的動態(tài)效果,還可以在視覺上抓住用戶的注意力,本文將詳細講解如何在頁面中使用視頻作為背景,并確保內(nèi)容可見、頁面元素布局合理,需要的朋友可以參考下
    2024-10-10
  • vue操作dom并為dom增加點擊事件方式

    vue操作dom并為dom增加點擊事件方式

    這篇文章主要介紹了vue操作dom并為dom增加點擊事件方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • vue編譯打包本地查看index文件的方法

    vue編譯打包本地查看index文件的方法

    下面小編就為大家分享一篇vue編譯打包本地查看index文件的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • Vue請求JSON Server服務器數(shù)據(jù)的實現(xiàn)方法

    Vue請求JSON Server服務器數(shù)據(jù)的實現(xiàn)方法

    這篇文章主要介紹了Vue請求JSON Server服務器數(shù)據(jù)的實現(xiàn)方法,需要的朋友可以參考下
    2018-11-11
  • Vue?3?中動態(tài)賦值?ref?的應用示例解析

    Vue?3?中動態(tài)賦值?ref?的應用示例解析

    Vue3引入了Composition?API,其中ref是核心概念,允許開發(fā)者聲明響應式狀態(tài),本文通過一個具體示例,探討了在Vue3中如何使用ref進行動態(tài)賦值,尤其是在處理DOM相關(guān)操作時的應用,通過ref動態(tài)賦值,可以有效管理組件內(nèi)的狀態(tài),提高代碼的可維護性和清晰度
    2024-09-09
  • VUE中鼠標滾輪使div左右滾動的方法詳解

    VUE中鼠標滾輪使div左右滾動的方法詳解

    這篇文章主要給大家介紹了關(guān)于VUE中鼠標滾輪使div左右滾動的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12
  • VUE3自定義指令防止重復點擊多次提交的實現(xiàn)方法

    VUE3自定義指令防止重復點擊多次提交的實現(xiàn)方法

    vue3項目,新增彈框連續(xù)點擊確定按鈕防止多次提交,在按鈕上添加自定義指令,這篇文章主要介紹了VUE3自定義指令防止重復點擊多次提交的實現(xiàn)方法,需要的朋友可以參考下
    2024-08-08
  • 細說Vue組件的服務器端渲染的過程

    細說Vue組件的服務器端渲染的過程

    這篇文章主要介紹了細說 Vue 組件的服務器端渲染,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-05-05
  • vue中循環(huán)請求接口參數(shù)問題及解決

    vue中循環(huán)請求接口參數(shù)問題及解決

    這篇文章主要介紹了vue中循環(huán)請求接口參數(shù)問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • Vue3中進行二維碼的生成與解碼實現(xiàn)詳解

    Vue3中進行二維碼的生成與解碼實現(xiàn)詳解

    這篇文章主要為大家介紹了Vue3中進行二維碼的生成與解碼實現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03

最新評論

凤阳县| 府谷县| 峨边| 大足县| 当涂县| 威信县| 鲁山县| 肇源县| 临高县| 天津市| 杨浦区| 宁明县| 高邑县| 乌拉特后旗| 尖扎县| 宁城县| 望奎县| 南京市| 化隆| 巴马| 涞源县| 四平市| 宣恩县| 佛山市| 澄迈县| 绥芬河市| 枣强县| 榆树市| 柳林县| 寿阳县| 丰原市| 合阳县| 林芝县| 西充县| 厦门市| 庄河市| 格尔木市| 油尖旺区| 甘德县| 东至县| 舟曲县|