请教关于分页的问题

2022-01-10 12:22:51 +08:00
 Aliberter

页面请求 A 的接口获取分页数据,A 又是请求 B 的分页接口获取的数据,现在要改 A 的接口逻辑,就是在第一页数据中再加入一条元素,这样整体的分页数据都顺延了,不能修改 B 的接口,怎么实现这个需求呢?

2210 次点击
所在节点    程序员
9 条回复
speedofstephen
2022-01-10 12:39:27 +08:00
B 分页参数是什么样的呢? 如果是 offset + pageSize 完全不用改任何东西吧. 如果是 PageNum+PageSize 就比较恶心了.
这么看来还是第一种比较合理.
Aliberter
2022-01-10 12:48:14 +08:00
@speedofstephen 都是 PageNum+PageSize ,唉,确实比较恶心,所以我也只是来问问老哥们有没有比较优雅的实现方式,如果后端实现不了,我感觉也就是让前端页面改了,页面上单独的在第一页塞一个元素进去,其他的分页照旧,感觉应该可以
cpstar
2022-01-10 13:16:12 +08:00
如果是 pn+ps ,怎么能不改 B 接口,不可能啊
B 接口只能返回 0~(n-1)、n~(2n-1),想返回 1~n ,那只能请求两次,获得 0~(2n-1),然后自己处理出 1~n 。
yidinghe
2022-01-10 13:43:43 +08:00
在页面上多显示一条又没关系,就当第一页多一条数据就是了。
Aliberter
2022-01-10 14:30:41 +08:00
@cpstar 确实跟你思路一样哈哈,不过是我提前想多了,刚问了问,就硬加就行,前端页面不受影响
Aliberter
2022-01-10 14:31:02 +08:00
@yidinghe 哈哈 确实 不受影响
DonaldY
2022-01-10 14:51:23 +08:00
offset + pageSize 不是可以与 pageNum + pageSize 互转嘛。

感觉无非就是查询 + 去重。
index90
2022-01-10 15:03:35 +08:00
后端接口就不应该设计成 page+pageSize ,应该用 offset+limit
xiangyuecn
2022-01-10 15:14:37 +08:00
A 里面重新计算一下页码位置的事,请求两次 B 接口拿到满足的数据,而已,有多难?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/827280

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX