计算页面总数时的分页逻辑

时间:2017-09-08 03:23:19

标签: javascript algorithm reactjs

我正在使用需要我在prop下面传递的反应组件

<Pager 
      totalPages={10}
      currentPage={1}
/>

我无法在api中找出计算结果total_items,而不是totalPages。如果我有50 total_items,我如何为totalPages道具生成5?说我的限制是10。

2 个答案:

答案 0 :(得分:22)

total_items除以limit,并将值向上舍入。

Math.ceil(total_items/limit);

50 items / 10 per page = 5 pages
55 items / 10 per page = 6 pages

答案 1 :(得分:-1)

你需要检查除法运算中是否有商,因为显然很少有物品需要在另一页显示

例如:

6 items
5 limit

如果我们只是divide and ceil我们会得到 1 这是不正确的,因为有一项需要额外的页面才能计算

totalPages_pre = (total_items/limit)
totalPages = (search.total % page_size) == 0 ? totalPages_pre : totalPages_pre + 1