这篇文章给大家分享的是有关Vue2.0+ElementUI如何实现表格翻页的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
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如何实现表格翻页”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。