next.js 在使用getServerSideProps后,是否应该在组件装载时使用客户端获取

brjng4g3  于 2023-04-30  发布在  其他
关注(0)|答案(1)|浏览(135)

我认为使用客户端获取是一种矫枉过正,在Next-js中使用getServerSideProps之后,我觉得如果我已经预先渲染了数据,我应该再次在组件渲染中获取数据。
我不知道什么是最好的办法,这种问题,如果有人可以指出我在正确的方向。

0ejtzxu1

0ejtzxu11#

我认为这更多的是个人的选择,而不是“对或错”。
在文档中,Vercel指出:
只有在需要呈现必须在请求时获取其数据的页时,才应该使用getServerSideProps。这可能是由于请求的数据或属性的性质(例如授权标头或地理位置)。使用getServerSideProps的页面将在请求时在服务器端呈现,并且仅在配置了cache-control头时才被缓存。
如果您不需要在请求期间呈现数据,那么您应该考虑在客户端获取数据或getStaticProps。

  • 来源

如果数据是基于博客或帖子的,并且不需要身份验证(或者是基于帐户的),那么可以使用ISR
您还必须考虑数据的大小。Vercel建议在128 kb以下。- Source
我选择正确的方法是
1.数据是否需要加载?
1.这个数据有多大?
1.是基于auth的吗?
1.这些数据更改的频率如何?
和往常一样,在Nextjs中有多种方法可以做同样的事情,我认为你需要决定什么是最适合用例和用户体验的。是否要冒加载时间的风险来确保渲染时的数据?或者只加载主数据,然后在客户端获取一些组件,这样可以吗?

相关问题