创建一行代码,您可以打开next.js应用程序,
之后,终端将打印以下信息,表明将安装它,三个依赖项,并且React生产环境框架可以使您可以在生产环境中快速使用,而不必担心路由,编译选项,Anddata Cache和其他事宜。
在下面,我们输入了应用程序,并开始体验一些下一步的特征。
I. Next.js的文件路径是在根目录的文件夹下的网页路由。例如,我们在目录中创建一个新文件夹。
只需要它,在运行后,下一个项目将在端口上运行。当我们访问该应用程序下的应用程序和两条路径时,我们可以看到。
该组件已被渲染到相应的路线!这无需用作路由,非常方便!
2.在Next.js的上下文中,预订阅(预渲染)必须具有取决于外部数据的组件。数据用于通过API获取。这些数据通常存储在数据库中,它们将用作网页作为网页。内容的呈现。预订这些网页的原因是因为如果您等待网站在浏览器上加载客户端(客户端),然后获得它,它将看起来相对较高的延迟(因为您必须等待这些数据的加载).pre -rendering是网络性能优化的非常重要的手段。
Next.js提供两种预渲染方法,一种是静态生成,另一个是服务器渲染(SSR)。
静态生成(建议):HTML是在施工过程中生成的,并根据每个请求重复使用。
服务器渲染:每个请求生成HTML。
对于服务器处理能力有限的小站点,静态生成是一种更好的方法,因为它降低了服务器的压力。
通过博客网页的示例,我们可以在Next.js中看到组件的数据如何静态生成。
静态生成(静态生成)我们首先创建一个新的博客组件,
该博客取决于外部参数以生成渲染内容。这是通过某个API获得的。我们可以同时导出文件中的功能,如下所示
通常,数据源要么在本地读取或获取外部数据(例如后端API,数据库)。
现在,我们可以在JSON文件中看到数据,
这是静态产生的效果。应该注意的是,数据只能在构建时获得一次,因此它仅适用于很长一段时间内不会更改的数据(或者将重新构建每个更改)。如果您想获得该数据经常更改,您需要使用服务器渲染(SSR),让我们在下面看一下。
如果您已经读取了服务器渲染(SSR)的上述部分,则使用SSR易于使用,您只需要替换导出功能即可。
例如,它仍然是博客组件。这次我们用来获取两篇文章,这些文章获得了掘金,如下所示
然后访问此页面,
可以看出,两篇文章的标题被打印出来?
请注意,我们可以通过观察网络请求找到返回的HTML文本本身带来了这两个标题,
这表明服务器是在外部数据时渲染的,而不是在客户端时发送请求以获取数据。在这种情况下,当服务器处理能力足够强大时,页面的加载速度非常快。
另外,SSR可以通过参数配置缓存逻辑。有关详细信息,请参阅官方文件。
静态一代用Next.js的官方词比较了SSR的官方词。
您应该问自己:“在用户请求之前,我可以获取预渲染的页面吗?”如果答案是肯定的,那么您应该选择静态生成。
否则,对于频繁的更新,应使用CSR或SSR,
客户端渲染(CSR):当您要求预先要求时,请跳上页面的某些部分,然后使用客户端JavaScript请求填充它们。
服务器渲染(SSR):Next.js将根据每个请求提前渲染页面。由于CDN无法缓存页面,因此速度会放慢速度,但页面始终是最新的。
实际上,我们的React项目在大多数情况下使用CSR,并在请求过程中通过加载状态优化用户感知。
好吧,所以我们迅速构建了一个下一步的SSR服务器项目,不是很简单吗?
如果您也对某个功能感兴趣,请在评论区域留言?
原始:https://juejin.cn/post/7095260025618169869