已关闭,此问题为opinion-based。目前不接受答复。
**想改善这个问题吗?**更新问题,以便editing this post可以用事实和引用来回答。
2天前关闭。
Improve this question
我目前正在做下一个js项目,我有一个关于数据获取的问题。在next js的最新版本中,可以通过服务器组件直接从数据库获取数据。在next js的旧版本中,你会获取数据,然后将其保存到一个状态,并在数据更改时在本地更新状态。您还可能使用上下文在组件和页面之间共享数据。我的问题是哪种方法在性能和代码质量方面更好。此外,在服务器组件中,如何在页面之间共享数据,以及如何在数据更改时更新数据?我相信有一个重新验证选项,但我不确定。
1条答案
按热度按时间lp0sw83n1#
抓取比较好,但是多次抓取会导致服务器忙碌,所以可以使用缓存方案。
你可以创建一个没有SSR的页面,而不是用SWR来获取数据。很明显,如果你必须从API中获取数据,你必须在
/api
方向创建另一个页面来响应来自客户端的请求。这个库由NextJS开发人员创建。它将缓存获取的数据,并防止您的服务器从许多请求。您可以在这里安装和阅读文档:https://swr.vercel.app/