这篇文章主要为大家展示了“vue如何基于element-ui分页组件封装”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“vue如何基于element-ui分页组件封装”这篇文章吧。
具体代码如下所示:
<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" > </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(); //更新列表 }
补充:下面看下Element-ui组件--pagination分页
一般写后台系统都会有很多的列表,有列表就相应的要用到分页,根据项目中写的几个分页写一下我对分页的理解,就当是学习笔记了。
这是Element-ui提供的完整的例子
<template> <div class="block"> <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage" :page-sizes="[100, 200, 300, 400]"//这事下拉框可以选择的,选择一夜显示几条数据 :page-size="100" //这是当前煤业显示的条数 layout="total, sizes, prev, pager, next, jumper" :total="400" //这个是总共有多少条数据,把后台获取到的数据总数复制给total就可以了 > </el-pagination> </div> </template> <script> export default { methods: { handleSizeChange(val) { console.log(`每页 ${val} 条`); }, handleCurrentChange(val) { console.log(`当前页: ${val}`); } }, data() { return { total:'0', currentPage: 4 }; } } </script>
以下是我自己在项目中用到的分页
<div > <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage4" :page-sizes="[5, 10, 20, 30]" :page-size="pageSize" //写代码时忘记把pageSize赋值给:page-size了, layout="total, sizes, prev, pager, next, jumper" :total="totalCount"> </el-pagination> </div>
以上是“vue如何基于element-ui分页组件封装”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。