Yii2接口自定义接收的分页参数名

引言

Yii2中ActiveDataProvider使用的分页参数默认是page和per-page,请求接口的url应为:

/api/module/controller/action?page=1&per-page=20

其中per-page指定每页的数据量,page指定当前请求的页码。
实际开发中,很多前端封装好的框架也会使用默认的分页参数去请求后端接口。比如Antd Pro中页码参数名为current,页容量参数为pageSize,那么如何让Yii2后端接收这两个参数进行分页处理呢

自定义分页参数名

查阅文档后,分页对象Pagination中有这样两个属性:
$pageParam : Name of the parameter storing the current page index.
$pageSizeParam : Name of the parameter storing the page size.
它们的值分别指定页容量、页码的参数名。
后端接口返回的数据是ActiveDataProvider,因此,在初始化ActiveDataProvider时配置如下:

$dataProvider = new ActiveDataProvider([
            ...
            // 前端分页字段
            'pagination' => [
                'pageSizeParam' => 'pageSize',
                'pageParam' => 'current',
            ],
        ]);

即可接收前端传递的pageSize和current参数进行分页处理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值