router.query 在下一个 js 中返回一个空对象

router.query returning an empty object in next js

我的文件夹结构:

还有我的代码:

const router = useRouter();
const { id } = router.query;

所以问题是 id 返回 {} 而不是返回 URL 中的 id。当我把它放在 jsx 中时它工作正常但当我把它放在 js

中时却不行

您应该将文件夹命名为“duc”或“product”或...并且文件夹名称中的 js 应该是 [id].js for dynamic route,而不是 index.js

Dynamic Routes