useSearchParams
编辑此页面获取一个包含响应式对象的元组,用于读取当前位置的查询参数和更新它们的方法。 该对象是一个代理,所以你必须访问属性才能订阅响应式更新。 注意值将是字符串类型,且属性名称将保持其大小写。
setter 方法接受一个对象作为输入,其键值对将被合并到现有的查询字符串中。
如果值为 ''
、undefined
或 null
,相应的键将在结果查询字符串中被省略。
这些更新的行为类似于导航,不会将页面滚动到顶部。
此外,setter 可以接受一个可选的第二个参数,与 navigate
相同,用于控制导航行为和自动滚动(默认情况下这些都是禁用的)。
const [searchParams, setSearchParams] = useSearchParams();
return ( <div> <span>页码:{searchParams.page}</span> <button onClick={() => setSearchParams({ page: (parseInt(searchParams.page) || 0) + 1 }) } > 下一页 </button> </div>);