返回一个列表时往往有如下的结构:
{
'total': 30,
'items': {...}
}
但这种做法是昂贵的,因为做了两次查询,一次查数量,一次查数据。所以演变出下面这种结构(stackoverflow是这种做法):
{
'hasMore': true,
'items': {...}
}
如何知道后面有没有数据呢?
方案1:
比方查 page=1
的数据,同时查一次 page=2
得出这个 hasMore
的值,当然这个比查 total
开销是要小点。
方案2:
查出 total
的值,缓存起来,但是会有实效问题
各位是如何处理这个问题的?
作为前端其实我喜欢第一种数据格式,因为我需要根据total来进行分页,准确的告诉用户还有多少页,尤其是当条数可能实时变化的时候,那么分页的页数也可能是实时变化的.