【发布时间】:2018-11-20 15:37:57
【问题描述】:
我目前正在 BIM 360 Docs 集成的项目文件/计划/工作表视图中实施分页、排序和搜索功能。
由于我找不到有关这些功能的任何最佳做法,我想我会伸出援手,这样我就不会一直重复发明轮子。
背景:
大部分实现使用https://github.com/Autodesk-Forge/forge-api-dotnet-client/ SDK。
根据我所见,Autodesk API 中的分页非常基础,不能很好地与过滤视图配合使用。如果我错了,请纠正我,但似乎无法获取视图中的项目数和/或计算结果集中的总页数。
如果使用过滤来限制 API 返回的项目类型(例如文档、工作表、项目文件),则 API 先应用分页,然后再应用过滤。这会导致返回的结果集中出现漏洞,例如有人会请求页面 1 大小为 5 个项目,然后返回 3 个项目,然后请求类似大小的页面 2 并且没有返回任何项目,然后页面 3 将产生 2 个项目。
上述问题迫使我们使用动态延迟加载分页,类似于目前在 BIM360 Docs UI 中的做法。
问题:
是否有其他更好的分页方式?还是我们必须在滚动时延迟加载结果,永远不知道下一页会返回多少记录?
【问题讨论】:
标签: autodesk-forge forge autodesk-bim360