成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

分頁組件

Jonathan Shieber / 1243人閱讀

摘要:分頁組件通過來接受從父組件傳遞過來的值頁面中的可見頁碼,其他的以替代必須是奇數(shù)當(dāng)前頁碼每頁顯示條數(shù)總記錄數(shù)父組件通過方

分頁組件

export default {
    name : "MoPaging",
    //通過props來接受從父組件傳遞過來的值
    props : {

        //頁面中的可見頁碼,其他的以...替代, 必須是奇數(shù)
        perPages : { 
            type : Number,
            default : 5 
        },

        //當(dāng)前頁碼
        pageIndex : {
            type : Number,
            default : 1
        },

        //每頁顯示條數(shù)
        pageSize : {
            type : Number,
            default : 10
        },

        //總記錄數(shù)
        total : {
            type : Number,
            default : 1
        },

    },
    methods : {
        prev(){
            if (this.index > 1) {
                this.go(this.index - 1)
            }
        },
        next(){
            if (this.index < this.pages) {
                this.go(this.index + 1)
            }
        },
        first(){
            if (this.index !== 1) {
                this.go(1)
            }
        },
        last(){
            if (this.index != this.pages) {
                this.go(this.pages)
            }
        },
        go (page) {
            if (this.index !== page) {
                this.index = page
                //父組件通過change方法來接受當(dāng)前的頁碼
                this.$emit("change", this.index)
            }
        }
    },
    computed : {

        //計算總頁碼
        pages(){
            return Math.ceil(this.size / this.limit)
        },

        //計算頁碼,當(dāng)count等變化時自動計算
        pagers () {
            const array = []
            const perPages = this.perPages
            const pageCount = this.pages
            let current = this.index
            const _offset = (perPages - 1) / 2

            
            const offset = {
                start : current - _offset,
                end   : current + _offset
            }

            //-1, 3
            if (offset.start < 1) {
                offset.end = offset.end + (1 - offset.start)
                offset.start = 1
            }
            if (offset.end > pageCount) {
                offset.start = offset.start - (offset.end - pageCount)
                offset.end = pageCount
            }
            if (offset.start < 1) offset.start = 1

            this.showPrevMore = (offset.start > 1)
            this.showNextMore = (offset.end < pageCount)

            for (let i = offset.start; i <= offset.end; i++) {
                array.push(i)
            }

            return array
        }
    },
    data () {
        return {
            index : this.pageIndex, //當(dāng)前頁碼
            limit : this.pageSize, //每頁顯示條數(shù)
            size : this.total || 1, //總記錄數(shù)
            showPrevMore : false,
            showNextMore : false
        }
    },
    watch : {
        pageIndex(val) {
            this.index = val || 1
        },
        pageSize(val) {
            this.limit = val || 10
        },
        total(val) {
            this.size = val || 1
        }
    }
}

父組件使用


文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/51948.html

相關(guān)文章

  • 小程序分頁實踐:編寫可復(fù)用分頁組件

    摘要:項目中遇到切換列表,每個都需要分頁的需求,分頁流程具有相似性,于是想將分頁封裝為組件,方便應(yīng)用。組件的復(fù)用完成了以上組件,在對其他分頁的頁面,可以直接復(fù)用。 項目中遇到 tab切換列表,每個tab都需要分頁的需求,分頁流程具有相似性,于是想將分頁封裝為組件,方便應(yīng)用。 組件的應(yīng)用已寫成一個小demo,效果如下圖所示(數(shù)據(jù)用mock模擬): showImg(https://segment...

    crelaber 評論0 收藏0
  • 關(guān)于vue+element-ui項目的分頁,返回默認(rèn)顯示第一頁的問題解決

    摘要:所以這就導(dǎo)致,頁面內(nèi)容正確,但是頁碼高亮依舊是第一頁解決辦法我們需要在之后刷新這個分頁組件或者讓分頁組件的后于之后加載到頁面。然后再次測試,發(fā)現(xiàn)完美解決問題。 問題描述 當(dāng)前頁面如下showImg(https://segmentfault.com/img/bVbjJ7a); 然后點擊頁碼跳到第3頁,然后在第三頁點擊頁面鏈接跳轉(zhuǎn)到新的頁面showImg(https://segmentfa...

    YFan 評論0 收藏0
  • Laravel自定義分頁樣式

    摘要:的分頁組件默認(rèn)為的分頁樣式,但如果我們用的并不是或者說分頁的結(jié)構(gòu)不一樣,這時我們需要自定義分頁。進(jìn)一步,可以看到通過繼承并對方法進(jìn)行重寫,由此可見,我們可以通過繼承類并對方法進(jìn)行重寫,就可以自定義分頁的樣式了。 ????????Laravel 的分頁組件默認(rèn)為 Bootstrap 的分頁樣式,但如果我們用的并不是 Bootstrap 或者說分頁的 HTML結(jié)構(gòu)不一樣,這時我們需要自定義...

    Lionad-Morotar 評論0 收藏0
  • vue分頁組件

    摘要:最近在做系統(tǒng)管理后臺的需求,用了,體驗還是挺好的,但是一直找不到一個比較好的分頁組件,就自己整了一個。移動端可能不適合使用這個組件默認(rèn)每個分頁會帶上類名,點擊態(tài)會帶上的類名,需要修改可以去改動的設(shè)置項目地址分頁組件歡迎大家使用交流 最近在做系統(tǒng)管理后臺的需求,用了vue,體驗還是挺好的,但是一直找不到一個比較好的分頁組件,就自己整了一個。 使用的方法如下,只要傳遞一個total總頁數(shù),...

    meislzhua 評論0 收藏0
  • 第九集: 從零開始實現(xiàn)一套pc端vue的ui組件庫( 分頁組件 )

    摘要:第九集從零開始實現(xiàn)分頁器組件本集定位分頁器這個組件也算是個老朋友了還記得剛學(xué)的時候?qū)憘€分頁器要行代碼要是能穿越回去我得好好教教我自己設(shè)計模式 第九集: 從零開始實現(xiàn)( 分頁器組件 ) 本集定位: 分頁器這個組件也算是個老朋友了, 還記得剛學(xué)js的時候, 寫個分頁器要300行代碼,要是能穿越回去, 我得好好教教我自己設(shè)計模式

    levy9527 評論0 收藏0
  • 第九集: 從零開始實現(xiàn)一套pc端vue的ui組件庫( 分頁組件 )

    摘要:第九集從零開始實現(xiàn)分頁器組件本集定位分頁器這個組件也算是個老朋友了還記得剛學(xué)的時候?qū)憘€分頁器要行代碼要是能穿越回去我得好好教教我自己設(shè)計模式 第九集: 從零開始實現(xiàn)( 分頁器組件 ) 本集定位: 分頁器這個組件也算是個老朋友了, 還記得剛學(xué)js的時候, 寫個分頁器要300行代碼,要是能穿越回去, 我得好好教教我自己設(shè)計模式

    leoperfect 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<