内容丰富的服务器端在Next.js中呈现动态路由?

时间:2020-06-26 18:27:02

标签: next.js contentful

根据Next.js,要呈现动态路径,您既需要getStaticPaths()也需要getStaticProps(),对我来说,这个问题是页面数据正在缓存中。我将Contentful用于页面数据,但是当我在帖子中进行更新时,该更新不会到达页面。为了进行更改,我必须重新编译并推送到我的作品中。

但是,对于非动态路由,我可以使用getServerSideProps(),并且没有问题。

我知道使用SWR可以呈现客户端,但是可以更新数据。

是否有一种方法可以在运行时使用SWR而不是使用Contentful的client.getEntry在动态路由中呈现Contentful数据?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果要在构建时(SSG)静态生成动态路由,则只需要getStaticPathsgetStaticProps进行动态路由。如果您想在运行时获取数据,则可以在动态路由上使用getServerSideProps代替-这样做没有问题,尤其是因为您已经在其他页面上这样做了。

请参见this section of the documentation,其中提到了通过getServerSideProps使用动态路由。