0

我看到 react 18 有一些很酷的钩子来帮助手动控制状态更新的优先级(useDeferredValue 和 useTransition),并且使用这些方法可以解决我在表上遇到的一些性能问题。但是 React 18 还不稳定!

所以我想知道是否有办法处理这个是 React 16 / 17?有没有办法告诉协调器将我的行更新标记为低优先级,以便用户的输入更新将始终中断并优先于呈现行的表?

对于更多的上下文,我的问题是我在页面上有一个搜索框和一个表格。表格行中显示的初始数据是未过滤的,但是当用户在搜索框中键入时,我向后端进行查询并获得过滤后的数据列表。当该数据返回时,我将其呈现到表中。我可以(并且确实)对查询使用去抖动功能,这样只有当用户停止输入 500 毫秒时,我才能获取数据。但这仅在用户键入每个字母的速度超过 500 毫秒时才有帮助,并且它为每次调用检索数据的用户体验增加了 500 毫秒。我想要一些感觉更灵敏的东西。

React 18 更新完美地解决了我的问题。在 React 17 中寻找一种方法来做到这一点。

4

0 回答 0