Vue开发——封装分页组件

使用elementui中的el-pagination来封装分页组件
 
pagination.vue:
<template>
    <div class="pagination">
        <el-pagination  small  class="text-center"  @size-change="handleSizeChange" @current-change="handleCurrentChange"
                                :current-page="page.page" :page-sizes="pageSizes" :page-size="page.limit"
                                layout="total, sizes, prev, pager, next, jumper" :total="total">
        </el-pagination>
    </div>
</template>

<script>
export default {
    props: {
        total: {
            type: Number
        } // 总条数
    },
    data() {
        return {
            pageSizes: [10, 20, 50, 100],
            page: {
                page: 1,
                limit: 10
            }
        };
    },
    methods: {
        // 每页条数变更
        handleSizeChange(val) {
            this.page.limit = val;
            this.$emit('pageChange', this.page);
        },
        // 当前页码变更
        handleCurrentChange(val) {
            this.page.page = val;
            this.$emit('pageChange', this.page);
        }
    }
}
</script>
<style>
.pagination {
    margin: 20px 0;
}
</style>

 

 
使用创建的分页组件
<pagination :total="total" @pageChange="pageChange"></pagination>
 
 
// 页码切换
pageChange(item) {
    this.searchContent.page = item.page;
    this.searchContent.limit = item.limit;
    this.getList();
},
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值