【发布时间】:2020-09-17 20:37:05
【问题描述】:
我有一个使用 Next.js 的单页网站。我在路线/ 上有主页,其中显示了产品列表。此页面的代码位于pages/index.js。每个产品都有一个id,所以我可以使用/#product-id 跳转到它。
为了使其对 url 更友好,我使用 product-id 作为路由中的第二个参数来复制此行为,如下所示:/product-id。
我所做的只是使用useRouter() 查看product-id 参数:
const selectedProductId = useRouter().query['product-id']
然后使用js滚动到具有此ID的元素:
document.getElementById(selectedProductId ).scrollIntoView()
所以我将脚本名称从 /pages/index.js 更改为 /pages/[product-id].js。
所以现在路线 /1234 工作已经预料到,但如果我去 / 我得到错误 404。
那么有人知道如何使用一个js 文件匹配/ 和/param 吗?
【问题讨论】:
标签: javascript reactjs next.js