像 next.js 这样的服务器端渲染中状态管理的最佳方法是啥?

Posted

技术标签:

【中文标题】像 next.js 这样的服务器端渲染中状态管理的最佳方法是啥?【英文标题】:What is best approach for state management in server side rendering like next.js?像 next.js 这样的服务器端渲染中状态管理的最佳方法是什么? 【发布时间】:2020-07-22 21:06:25 【问题描述】:

所以在我需要开发前端部分的大型应用程序上工作。 我们希望它是用于 SEO 目的的 s-s-r,但是当涉及到状态管理时,我们有 redux 来管理它,那么我们将如何管理它以及服务器端和客户端配置应该是什么?如果可能的话,也分享例子。 我们可以在 next.js 中定义像 react-router 这样的客户端路由吗?

【问题讨论】:

【参考方案1】:

使用开箱即用的上下文 API 和 react。它足以处理大多数用例,redux 仍然有它的位置,但如果你只是构建一个 crud 应用程序,它并不是真正需要的。

此处的示例回购:https://github.com/zeit/next.js/tree/canary/examples/with-context-api

【讨论】:

如果我刷新页面,ContextAPI 会保留我的数据吗? @Angad【参考方案2】:

你可以考虑使用 Recoil.js。同样,这取决于您的应用程序的规模

【讨论】:

以上是关于像 next.js 这样的服务器端渲染中状态管理的最佳方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章

Next.js 中的会话管理

服务器端渲染不适用于生产构建 Next.js

Next.js:如何将仅外部客户端的 React 组件动态导入到开发的服务器端渲染应用程序中?

使用服务器端渲染获取数据的正确方法(Next.js,何时使用 componentDidMount 以及何时使用 componentWillMount)

react-html5video 是不是与服务器端渲染兼容? (使用 next.js)

如何在服务器端渲染中将样式应用于 Next.js 中的 HTML?