谁能解释一下Next.js的generatestaticparams()服务器函数

问题描述 投票:0回答:2

我是编程初学者,已经阅读了 React 的基础知识并开始了 nextjs 13。目前,我在从文档中理解generatestaticparams()服务器函数方面遇到困难,比如它的基础知识、它的作用和用途用于。是用来生成静态页面的吗? 谁能用简单的语言给我解释一下。 https://nextjs.org/docs/app/api-reference/functions/generate-static-params

我看过一些 youtube 教程,但无法掌握它的概念。大多数教程都是从某些 api 等获取某种数据,例如视频或待办事项列表。

next.js
2个回答
1
投票

首先,我要提一下,在开始学习 React 或 Next 时,

getStaticParams
并不是必需的。我个人已经使用Next很多年了,但从未真正使用过
getStaticParams
。这也不是一个容易理解的概念,所以当它对你来说没有意义时,不要感到难过。

我还要指出,它很容易与 getStaticProps 混淆,这是不同的。

因此,我的建议是忽略文档的这一部分,然后转到其他内容,此时您更容易理解一些内容。

但是回答你的问题:

getStaticParams
是一种通过尽早获取数据来加速网站速度的方法。

示例

假设您正在建立一个个人博客。我们还假设您已经在 Medium 上发布了一些帖子,现在希望将其显示在您的个人博客上。一种方法是使用 Medium API 获取您的帖子列表并显示它们。

现在,每当有人访问您的博客时,您都可以调用 Medium API 来获取此博客文章列表。但由于您的博客文章不会经常更改,因此您可能只想在“开始”时获取此帖子列表一次,而不是“在每个请求时”。 开始这里指的是当你建立并发布你的网站时。这就是 getStaticParams 可以帮助您的。它为您提供了一种仅获取博客文章列表一次的方法,而不是在每次请求时都获取它们,这将减少博客的加载时间。

generateStaticParams

0
投票

这会预热页面缓存。因此,如果动态路由第一次被命中,则不必由服务器渲染,而只需从缓存中提取即可。这可以提供更加一致的站点性能,特别是对于很少固定的页面或重新部署后。

由于所有页面都是在构建时创建的,因此您可能遇到的任何错误都会在构建过程中显示出来。这是一个很大的优点。

© www.soinside.com 2019 - 2024. All rights reserved.