You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何正确使用Next.js Router?两行useRouter声明如何合并为同一行不报错?

合并写法实现方案

你可以单次调用useRouter钩子同时完成两个变量的声明,正确的单行写法如下:
const router = useRouter(), { replace } = router;

说明

  • 该写法仅调用一次useRouter,和你原有两行代码的功能完全一致,避免了重复调用钩子的冗余操作,不会触发运行报错。
  • 也可以选择更简洁的直接属性赋值写法:const router = useRouter(), replace = router.replace;
  • 需注意根据你使用的Next.js路由模式导入对应钩子:Pages Router从next/router导入,App Router从next/navigation导入,导入路径错误也会引发相关报错。

内容的提问来源于stack exchange,提问作者Bryan Lima

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 19:06:03