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

0g0grzrc  于 2022-11-06  发布在  其他
关注(0)|答案(2)|浏览(104)

背景

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

需求

  • 如何解决这种情况
nzk0hqpo

nzk0hqpo1#

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

可以满足你的诉求吗?

ijnw1ujt

ijnw1ujt2#

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

可以满足你的诉求吗?

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

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

所以会同时去调用

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

相关问题