【发布时间】:2019-09-15 06:04:08
【问题描述】:
我有一种情况,我需要在用户的操作(比如说点击)上输出一定数量的元素,每个元素都必须在前一个元素之后出现 500 毫秒。 元素数组存储在状态中,新元素添加到 setInterval 中运行在 useEffect 钩子中。
这是问题所在:在钩子和区间内,我无法访问数组的长度,也不能将其作为依赖项传递,因为它会导致无限循环。但是我必须在已经显示一定数量的元素后停止间隔。
我通过将 setInterval 迭代保留在钩子中找到了解决问题的方法。我想知道这是正确的还是有更好/更惯用的方法。
我在代码沙盒上创建了一个简单的问题示例:https://codesandbox.io/s/xo879wn08z
【问题讨论】:
标签: javascript reactjs react-hooks