最近用layui和tp5做分页,遇到了不少的坑,因为太久没有写代码了,很多概念上的东西过于生疏,这里把一些知识点再复习一下:
首先,layui有明确的分页方法,我们一般使用layui的表格分页,表格分页。在layui的内置模块->表格中有明确的分类方法
table.render({
elem: '#demo'
,height: 312
,url: '/demo/table/user/' //数据接口
,page: true //开启分页
,cols: [[ //表头
{field: 'id', title: 'ID', width:80, sort: true, fixed: 'left'}
,{field: 'username', title: '用户名', width:80}
,{field: 'sex', title: '性别', width:80, sort: true}
,{field: 'city', title: '城市', width:80}
,{field: 'sign', title: '签名', width: 177}
,{field: 'experience', title: '积分', width: 80, sort: true}
,{field: 'score', title: '评分', width: 80, sort: true}
,{field: 'classify', title: '职业', width: 80}
,{field: 'wealth', title: '财富', width: 135, sort: true}
]]
});
我们从内置的模块当中就可以看到,里面有一个page的方法,方法为true时,代表开启分页,但是此处的分页,是需要插入layui的分页组件的,在layuipage中,有对组件有说明,我们需要把page以数组的形式插入其中,比如:
table.render({
elem: '#demo'
,height: 312
,url: '/demo/table/user/' //数据接口
,page:{
layout:['limit','count','prev','page','next','skip']
//layout是自定义布局
,limit:1
,limits:[30,50,100]//每页显示多少
,groups:5 //显示几个连续页码
,first:'首页'
,last:'尾页'
}
//插入一个数组,参数是lauuipage中的参数
,cols: [[ //表头
{field: 'id', title: 'ID', width:80, sort: true, fixed: 'left'}
,{field: 'username', title: '用户名', width:80}
,{field: 'sex', title: '性别', width:80, sort: true}
,{field: 'city', title: '城市', width:80}
,{field: 'sign', title: '签名', width: 177}
,{field: 'experience', title: '积分', width: 80, sort: true}
,{field: 'score', title: '评分', width: 80, sort: true}
,{field: 'classify', title: '职业', width: 80}
,{field: 'wealth', title: '财富', width: 135, sort: true}
]]
});
上面进行了laytable中的参数设置,这里需要注意的是:
1/在php中进行数据返回,返回的数据为一个2维数组
2/method请求默认为get格式,get格式用于传递参数
3/
规定的返回数据样式如下:
{
"code": 0,
"msg": "",
"count": 1000,
"data": [{}, {}]
}