这篇文章主要介绍Vue2.0+ElementUI如何实现表格翻页功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
Element UI 是一套采用 Vue 2.0 作为基础框架实现的组件库,它面向企业级的后台应用,能够帮助你快速地搭建网站,极大地减少研发的人力与时间成本。在这个月的 NingJS 上我们开源了这个项目,当时它的文档还没有准备好。今天,经过两周多的完善, Element UI 的文档正式上线啦!目前它处于 rc 阶段,正式版将于 Vue 2.0 发布后第一时间跟进。 欢迎大家来使用和完善,一起把它做成 Vue 最好的企业级组件库。
ElementUI的表格要求的数据类型为字典数组。我使用了python3写后端,那么从数据库取数据时添加一行cursorclass=pymysql.cursors.DictCursor即可。取出后我将其存入redis数据库方便之后取用。取用时使用eval()函数再传到前端即可。
前端放置Pagination 分页器,我这里直接采用了完整功能的分页器。
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[10,20,50,100]"
:page-size="pagesize"
layout="total,sizes,prev,pager,next,jumper"
:total="data.length">
</el-pagination>
其中:handleSizeChange为pagesize发生改变时的相应函数,handleCurrentChange为currentPage发生改变时的相应函数。
page-sizes为所有可选择的page-size。可以自己更改其中的数字。
layout为附带的功能,一般不用动它。
total为总数据数。由于是字典数组,直接使用length方法即可得到总数据数。
data(){
return{
data:[],
currentPage:1,
pagesize:20,
}
},
初始页currentPage、初始每页数据数pagesize和数据data
methods:{
handleSizeChange:function(size){
this.pagesize=size;
},
handleCurrentChange:function(currentPage){
this.currentPage=currentPage;
}
}
上面的两个响应函数,很好理解。
<el-table
:data="data.slice((currentPage-1)*pagesize,currentPage*pagesize)"
stripe
>
el-table标签。通过计算很容易得到,要使当页显示分页后的对应数据,其下标应为(当前页-1)*每页数据数 到 当前页*每页数据数。使用slice方法进行取用。
stripe为带斑马纹表格。
<el-table-column
prop="id"
label="序号"
align="center">
</el-table-column>
column标签。可放多个,对每列的控制。label为该列名称,显示在第一行。prop为data中的某key的名称。
以上是“Vue2.0+ElementUI如何实现表格翻页功能”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注恰卡编程网行业资讯频道!