欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Vue2.0+ElementUI实现表格翻页的实例

程序员文章站 2022-09-08 10:01:50
elementui的表格要求的数据类型为字典数组。我使用了python3写后端,那么从数据库取数据时添加一行cursorclass=pymysql.cursors.dict...

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 
 style="width: 100%"> 

el-table标签。通过计算很容易得到,要使当页显示分页后的对应数据,其下标应为(当前页-1)*每页数据数 到 当前页*每页数据数。使用slice方法进行取用。

stripe为带斑马纹表格。

<el-table-column
 prop="id" 
 label="序号" 
 align="center"> 
</el-table-column> 

column标签。可放多个,对每列的控制。label为该列名称,显示在第一行。prop为data中的某key的名称。

Vue2.0+ElementUI实现表格翻页的实例

最后成果。

以上这篇vue2.0+elementui实现表格翻页的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。