vue element-ui 分页组件封装

2018-12-11 09:04:18来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

<template>
    <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :page-sizes="[10, 20, 30, 40]" :page-size="pageSize" layout="total, sizes, prev, pager, next, jumper" :total="total" style="float:right;">
    </el-pagination>
</template>
<script type="text/ecmascript-6">
export default {
    components: {

    },
    data() {
        return {

        }
    },
    props: {
        pageSize: {
            type: Number,
            default: 10
        },
        total: {
            type: Number,
            default: 1
        }
    },
    watch: {

    },
    methods: {
        //每页展示条数
        handleSizeChange(val) {
            //事件传递
            this.$emit('handleSizeChangeSub', val);
        },
        //当前页
        handleCurrentChange(val) {
            //事件传递
            this.$emit('handleCurrentChangeSub', val);
        }
    },
    // 过滤器设计目的就是用于简单的文本转换
    filters: {},
    // 若要实现更复杂的数据变换,你应该使用计算属性
    computed: {

    },
    created() {

    },
    mounted() {},
    destroyed() {}
}
</script>
<style lang="scss" type="text/css" scoped>
</style>

调用

// 分页
import pages from 'components/common/pages/pages'

components: {
  pages
},

<pages :total="total" :page-size="pageSize" @handleSizeChangeSub="handleSizeChangeFun" @handleCurrentChangeSub="handleCurrentChangeFun"></pages>

handleSizeChangeFun(v) {
  this.pageSize = v;
  this._enterpriseList(); //更新列表
},

handleCurrentChangeFun(v) { //页面点击
  this.pageNum = v; //当前页
  this._enterpriseList(); //更新列表
}

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:利用随机数与定时器做一个简单的伪随机抓阄游戏

下一篇:js实现简易打点计时器