Next.js - 概述

通过使用 Next.js,您可以非常轻松地创建基于 React 的强大应用程序并对其进行测试。Next.js 由 Vercel 创建,这是一个基于云的平台,可帮助开发人员开发应用程序、部署和扩展应用程序。

什么是 Next.js?

Next.js 是基于 React 的框架,具有服务器端渲染功能。它非常快并且对 SEO 友好。Next.js 具有 React 所缺乏的许多优势。

Next.js 相对于 ReactJS 的优势

  • 热代码重新加载 Next.js 服务器检测已修改的文件并自动重新加载它们。
  • 自动路由:无需为路由配置任何 URL。文件将放在 pages 文件夹中。所有 URL 都将映射到文件系统。可以进行自定义。
  • 组件特定样式: styled-jsx 提供对全局样式和组件特定样式的支持。
  • 服务器端渲染: React 组件在服务器上预渲染,因此在客户端加载速度更快。
  • Node 生态系统: Next.js 基于 React,与 Node 生态系统完美融合。
  • 自动代码拆分: Next.js 使用所需的库来渲染页面。 Next.js 不会创建单个大型 JavaScript 文件,而是创建多个资源。加载页面时,仅加载所需的 JavaScript 页面。
  • 预取:Next.js 提供 Link 组件,用于链接多个组件,支持预取属性以在后台预取页面资源。
  • 动态组件:Next.js 允许动态导入 JavaScript 模块和 React 组件。
  • 导出静态站点:Next.js 允许从 Web 应用程序导出完整的静态站点。
  • 内置 Typescript 支持:Next.js 用 Typescript 编写,并提供出色的 Typescript 支持。

Next.js 的历史

Next.js 由 Vercel(前身为 ZEIT)于 2016 年创建,旨在弥补 ReactJS 生态系统的差距。从 2016 年到现在,Next.js 也有了很大的改进。当前稳定的 Next.js 版本为 15.0.3(2024 年 11 月 7 日)。

Next.js 版本

年份 版本 主要功能
2016 Next.js 1.0.0 (十月) 首次发布
2017 Next.js 2.0.0 添加了自动代码拆分
Next.js 3.0.0 引入动态导入
Next.js 4.0.0 添加了零配置 TypeScript 支持
2018 Next.js 5.0.0 添加了 webpack 4 支持
Next.js 6.0.0 改进了错误处理
Next.js 7.0.0 添加了 Webpack 4 优化功能
2019 Next.js 8.0.0 引入无服务器模式
Next.js 9.0.0 新增内置零配置 TypeScript 支持、自动静态优化
2020 Next.js 9.3 引入 getStaticProps 和 getStaticPaths
Next.js 10.0.0 新增内置图片组件、自动图片优化
2021 Next.js 11.0.0 引入 Webpack 5 支持、脚本优化
Next.js 12.0.0 添加了 Rust 编译器、中间件和 React 18 支持
2022 Next.js 12.1.0 按需 ISR(增量静态再生)
Next.js 12.2.0 改进的中间件功能
Next.js 13.0.0 引入了 app 目录、Turbopack(alpha 版)、新的 Image 组件
2023 Next.js 13.4 App Router 稳定版本
Next.js 14.0.0 改进的服务器操作,部分预渲染
Next.js 15.0.3 React 19 支持,以及正在开发中的 Turbopack 稳定版本。

Next.js 如何工作?

Next.js 同时支持服务器端渲染和客户端渲染。因此,您可以决定您的应用程序需要哪一种。根据具体情况,它有助于 SEO 和快速访问您的应用程序。

请查看下图以了解 - "Next.js 内部如何工作?"我们将在本教程中解释所有这些步骤。

NextJS Working