ARTICLE DETAIL

资讯详情

深耕商务建站与企业官网运营的一线实战洞察。

第156篇 Paging 分页库:加载更多与占位

第156篇 Paging 分页库:加载更多与占位 先把结论放在前面:Paging 的核心价值不是"帮你翻页",而是"帮你把数据流做对"——它把"页"这个概念从 UI 层下沉到数据源,让上拉加载、错误重试、缓存命中、预取这些原本靠手写状态机处理的逻辑,变成一条声明式的Flow。能讲出"Paging 把状态机从 UI 移到了库内部",就说明理解了它的设计意图。面试里"你在项目里怎么用 Paging"这题,答不好的原因通常不是知识不够,而是没有把做过的事按"场景、做法、结果"梳理过。本文给出的结构就是:场景(数据量与分页维度)→ 做法(PagingSource vs PagingDataFactory 的选择)→ 结果(首屏时间、内存、错误率的变化)。三个核心角色与它们的分工PagingSourceInt, T —— 数据源:怎么按页取 ├─ key: PageKey = 页码 / offset / prevKey|null ├─ load(key): LoadResult.Page(data, prevKey, nextKey) └─ 关键:nextKey == null 表示数据到底了 Pager(flow, config) —— 配置:每页多大、预取多远、占位符策略 └─ config: PagingConfig(pageSize, prefetchDistance, initialLoadSize, enablePlaceholders, maxSize) PagingDatal
返回列表
PREV
查看更多资讯
NEXT
返回资讯列表