vue+el-pagination分页

  html部分:

<ul>
  
<li class="item" v-for="(item,index) in pageLists" :key="index">
</ul>
el-pagination
       @current-change="handleCurrentChange"
       :current-page="currentPage"
       :page-size="6"
       layout="total, prev, pager, next"
       :total="listsDataNumber"
></el-pagination>

 

   js部分:

export default{
        data(){
            return{
                total: '0',
                currentPage: 1,
                listsDataNumber: '',
                pageLists: ''
            }
        },
        props: {
            lists: Array,
        },
        methods: {
            handleCurrentChange(val) {
                this.pageLists = this.lists.slice((val-1)*6,val*6)
            },
            initPageLists(){
                this.pageLists = this.lists.slice(0,6)
            }
        },
        watch: {
            "lists": function (lists) {
                this.listsDataNumber = lists.length
                this.initPageLists()
            },
        }
    }

 

    其中,lists是父页面传来的值,pageLists是分页后每一个分页里要展示的值,也就是真正要渲染的值。进入子页面时,首先initPageLists初始化第一页的值,然后通过handleCurrentChange()来更新更换分页时要展示的内容。

相关文章:

  • 2021-11-05
  • 2022-12-23
  • 2021-11-10
  • 2021-08-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-25
  • 2021-12-04
相关资源
相似解决方案