hooks icon indicating copy to clipboard operation
hooks copied to clipboard

use-url-state如何处理同时多个setState的情况

Open xmsz opened this issue 4 years ago • 2 comments

背景

  • 创建了两个use-url-state
  • 执行下面代码
setUrlState1({page:1});
setUrlState({orderBy:'desc'})
  • 预期结果是 page=1&orderBy=desc
  • 但是实际是page=1
  • 原因是useHistory或者useLocation的值还是旧值,所以覆盖会有问题

需求

  • 如何解决这种情况

xmsz avatar Jun 14 '21 16:06 xmsz

setUrlState({
  page:1,
  orderBy:'desc'
})

可以满足你的诉求吗?

brickspert avatar Jun 15 '21 02:06 brickspert

setUrlState({
  page:1,
  orderBy:'desc'
})

可以满足你的诉求吗?

不太行,因为我们将page和orderBy拆分成两个通用hooks

场景是在重置筛选条件的时候,同时也需要重新回到第一页

所以会同时去调用

然后也有可能其他类型场景

xmsz avatar Jun 27 '21 08:06 xmsz