在动态路由中获取参数时遇到问题。我在阅读时不断出错:
TypeError:无法解构“router”的属性“themenID”。查询,因为它是未定义的。
此外,我不能使用next/router
,但必须从next/navigation
集成路由器。但是这个没有query属性。我用Next。js版本13
路径的名称如下:http://localhost:3000/MainThema/2
。
app/MainThema/[themenID]/page。js:
"use client";
import { useRouter } from "next/navigation";
import React from "react";
export default function MainThema() {
const router = useRouter();
console.log(router);
const { themenID } = router.query;
return <div>MainThema </div>;
}
1条答案
按热度按时间fhity93d1#
正如您在文档中所读到的,当
page.js
组件位于动态段中时,它会传递一个params
对象。这个params
将包含您的动态路由id,如下所示:如果你需要在一些嵌套的客户端组件中获取它,你应该使用
useParams
钩子: