使用React浏览分页器中的页面

时间:2017-12-04 12:17:06

标签: javascript html reactjs pagination

首先,我想说这是我的第一个问题,对不起,如果它不符合质量标准(无论是太杂乱/组织不当还是解释),我正在听各种反馈。也很抱歉,如果我的英语不完美,我会尽可能地理解。

所以这是我的问题:我正在实现一个与服务器端内容范围分页兼容的React分页器。我想浏览页面,当它们太多时。

此处没有样式的基本示例(编辑:工作,请参阅答案):https://codesandbox.io/s/w03lkpmy48

(我是React的新手,所以我的代码质量可能有问题。)

我创建了一个函数calculateNumberOfPages(itemsCount)(l.42),其中itemsCount可以是一个巨大的数字,例如7683,用于返回用于创建<li>的int。

在渲染中,我调用此函数(l.48)来获取数字,然后我循环x次并将<li> s推入数组(l.53到65)。

但是,当itemsCount很大时,可能会产生如下内容:https://i.imgur.com/zea4QaD.png

这就是为什么我在页数大于10时放置省略号: https://i.imgur.com/7FstTlO.png

现在,问题是我想浏览页面,以获得下一页(4乘4)。如果我点击第10页,我应该有10 11 12 13 14 ... 16(例如),当我点击第10页时也是如此,以便有以前的页面。

但我在逻辑上卡住了,我非常需要你的帮助。代码中的一些注释可能指出我想做什么,但它们可能像我的逻辑一样混乱。

如果您有其他问题,我会全力以赴。感谢您阅读我的问题!

1 个答案:

答案 0 :(得分:0)

好的,所以我得到了朋友的帮助才能做到这一点。

我的代码中基本上缺少的是一种保存当前页面状态的方法,以便对其进行比较。所以我在状态中添加了一个currentPage属性。

然后我添加了一些Javascript(if / else,需要优化和清理)来比较<li>和当前页面的值。

我改变了渲染中显示的值。

您可以在问题的代码框中看到所有内容!