我计划创建一个Next.js应用程序以及用于状态管理的Redux Toolkit 。我只会做静态生成(使用getStaticProps和getStaticPaths)。
我需要使用next-redux-wrapper ( https://github.com/kirill-konshin/next-redux-wrapper ) 吗?
我可以在不使用next-redux-wrapper 的情况下获得静态生成的所有好处吗?
我计划创建一个Next.js应用程序以及用于状态管理的Redux Toolkit 。我只会做静态生成(使用getStaticProps和getStaticPaths)。
我需要使用next-redux-wrapper ( https://github.com/kirill-konshin/next-redux-wrapper ) 吗?
我可以在不使用next-redux-wrapper 的情况下获得静态生成的所有好处吗?
简短的回答是——这不是必需的,但它让事情变得更方便。即使是静态的。
我想说,如果你只需要静态生成,添加 Redux 会让你的生活变得更加艰难。由于getStaticProps(以及getServerSideProps)是在服务器上完成的,每个页面导航都会导致新的 redux 存储,这将是非常痛苦的,要与已经存在的客户端状态进行适当的水合。
Redux 仅在您使用经典的getInitialProp初始化一次然后仅在客户端使用时才有效。
如果你在useEffect中仍然有很多客户端状态管理,那么使用 Redux 可能是有意义的,但请仔细阅读next-redux-wrapper文档的 hydration 部分。