如何解决动态路由无法使用 Next.js 刷新页面
我使用了 Next.js,但动态路由出错。
在我的应用程序中,我使用 getStaticPaths
、getStaticProps
和这个:
<Link
href={`/offers/[id]?id=${offer.id}`}
as={`/offers/${offer.id}`}
>
<a>{offer.title}</a>
</Link>
当我点击这个链接时,显示我的页面的动态路由没有问题。
但是当我刷新同一页面时,我收到以下消息:
当我寻找解决方案时,答案是我的 Link
在点击时没有正确设置。
但现在我不点击链接,我只是刷新我的页面。
我使用 Next.js 10.0.7
解决方法
自从 Next.js 9.5.3
以来,不再需要将 as
用于动态路由。相反,您可以直接使用该值在 href
中进行插值。
<Link href={`/offers/${offer.id}`}>
<a>{offer.title}</a>
</Link>
或者,您也可以通过向其传递 URL 对象来使用不同的 Link
语法。
<Link
href={{
pathname: '/offers/[id]',query: { id: offer.id }
}}
>
<a>{offer.title}</a>
</Link>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。