我目前正在探索 ReactJS 我看到了NextJS和React Router
谁能告诉我两者之间的优缺点。我不确定将两者进行比较是否正确,但据我所知,react-router 已经具有 SSR 功能。那么使用 NextJS 有什么好处呢?
谢谢!
我目前正在探索 ReactJS 我看到了NextJS和React Router
谁能告诉我两者之间的优缺点。我不确定将两者进行比较是否正确,但据我所知,react-router 已经具有 SSR 功能。那么使用 NextJS 有什么好处呢?
谢谢!
Next.js(另请参阅 GatsbyJS 和 After.js 等替代方案)是功能齐全的 SSR/静态站点框架,因此如果您需要生成 SSR 静态站点,您可以获得许多开箱即用的功能。这些框架已经解决了很多问题,所以添加一个特性就像阅读文档一样简单,而不是自己研究和编码。
如果您使用标准 React 应用程序和 react-router 编写自己的设置,那么当您深入研究 SSR 时,您可能会发现自己遇到了很多复杂性和边缘情况。
简而言之,如果 SSR 是核心需求,那么肯定考虑使用 SSR React 框架。
Jed 的回答概括了它,但这里有一些澄清:
React 路由器允许SSR,但没有实现它。您仍然需要制作一个服务器脚本,至少将应用程序呈现为字符串并将其提供给客户端。您可能需要做其他事情,例如提供静态文件。NextJS 为你做这件事。
SSR 附带了一些 NextJS 也涵盖的注意事项,主要是初始异步函数(例如,从 API 获取)。在定制系统中,您必须确定应该调用哪些函数,通常基于路由,并将数据传递给组件,通常使用 Redux
我目前正在使用这两种系统开发网络,两者都有一些优点和缺点。NextJS 有一种特定的方式来声明路由和一种非常不同的移动方式,但是制作一个自定义系统来处理 NextJS 涵盖的所有内容是相当的工作。除非真的需要,否则我不建议自己制作所有东西,如果不担心异步加载,可能会检查像 Gatsby 这样的替代品