NEXTJS-如何删除查询参数?
如何在不刷新 Next JS (React) 中的页面的情况下删除或更新查询参数?
- 用户在 URL 上
/about?login=success&something=yes - 单击按钮并
?login=success&something=yes从 URL 中删除而不刷新页面。单击按钮后的 URL 将是/about
我怎样才能实现它?
正如这个线程中提到的,我知道可以使用路由器删除查询参数或查询字符串。但是,useLocation并且useHistory在 上不可用next/router。
回答
const router = useRouter();
router.replace("/about", undefined, { shallow: true });
使用replace以防止增加新的网址进入历史(否则只是使用push),并shallow: true允许您更改URL而不运行数据获取方法。这将导致重新渲染,但不会刷新页面本身。