分页器 - 1556461835/note GitHub Wiki
tp5.0 分页器
在tp5中会有原有的封装好的分页器,但是在element框架一起使用的时候,我们会引用element中分页组件,刺客我们就需要将二者结合在一起,做一个分页组件 在项目中根据需求
- 前台给后台传值limit(条数),page(当前页码)
- 后台只返回总页数(pages)
前台vue代码
//vue组件
<el-pagination background layout="prev, pager, next"
:page-count="pages"
:page-size="limit"
:current-page.sync="page"
@current-change="pagechange"
>
</el-pagination>
//逻辑代码
pagechange(){
var cat_id = this.cascCat[this.cascCat.length - 1];
api.goods.getgoods({
page:this.page, //当前页码
limit:this.limit, //每页条数
is_up:this.is_up,
cat_id,
search:this.search
}).then(res => {
//总页数
this.pages = res.data.pages;
})
},
后台php代码
public function index(Request $request)
{
/**
* page //当前页
* limit //每页条数
*/
//条数
$request = Request::instance();
$limit = $request->param('limit')?$request->param('limit'):Config::get('paginate')['list_rows'];
//当前页数
$page = $request->param('page')?$request->param('page'):1;
//总页数
$pages =ceil(Goodsmodel::where($team)->count()/$limit);
//分页
$data = Goodsmodel::page($page,$limit)->select();
return json([
'code'=>200,
'msg'=>'成功',
'data'=>$data,
'pages'=>$pages, //总页数
]);
}