前端或app上拉加载,下拉刷新的分页接口,是如何实现数据排它的?

前端或app上拉加载,下拉刷新的分页接口,是如何实现数据排它的?,第1张

首先第一个、不建议把一个频繁更新的字段作为查询条件

然后解决可以用JS在页面获取一个时间戳,因为下拉分页、页面是不刷新的,所以时间戳的值是不变的,然后传递到后台,where条件增加update_time<页面传递过来的时间戳就可以排除掉最新修改的数据

Paging是google官方推出的一个Android分页加载库,配合RecyclerView可以很方便实现RecyelerView的Footer和Header。可以使用在Java或Kotlin项目中,借助PagingDataAdapter帮助RecyclerView实现分页加载。

Paging中最重要的两个类是 PagingSource LoadState PagingDataAdapter :

Jetpack Compose 提供了Flutter类似的功能API,非常方便,简单举个例子:

本文主要介绍JetCompose 项目中 Paging3分页的使用,下拉刷新上拉加载动效。效果如下:

构建错误:是com.google.accompanist:accompanist:xxx 相关库的版本不兼容,需要依赖相同的版本

数据库查询的时候可以设置查询起始项和查询个数的,这是两个查询参数,一般要查询的个数都是不变的,比如我每次要查询10条数据,这个是就设置为10.但是每次加载新数据从数据库获取数据时起始项是不一样的,比如数据库有21条数据,第一次查询后显示10条,那么起始项此时要变为0+10就是10,第二次查询后为10+10=20,第三次就不一样了,因为要查询的数据只有1条了,所以每次要比较查询到的数据和设定的查询个数大小,因为1<10,所以此时查询的起始项要变为20+1=21.至于你说的新加了一条数据的话,那就属于数据存储的问题了,一般最后增加的数据要按时间排到最后,那么就不会出现重复的问题了。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9973612.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-03
下一篇2023-05-03

发表评论

登录后才能评论

评论列表(0条)

    保存