Next.js 简介

Next.js 是基于 React 的最大的全功能web应用扩展框架,并且集成了一个快速构建的 基于 Rust AtlasJavaScript Atlas 工具。根据 Top Software Repos on GitHub 统计,Next.js也是GitHub上排名第14的软件仓库(以Star计算),可见这个web框架的流行程度。

备注

阮一峰的网络日志 曾经推荐过一篇 How I Built My Blog 介绍如何采用Next.js构建blog的文章,非常详细和精彩。

Next.js是由 Vercel 公司推出的基于 React 的web框架,可以实现 server-side renderingstatic website generation :

  • 传统的React应用都是客户端浏览器渲染,但是Next.js扩展了功能提供了服务器端渲染,并且建议开发者使用Node.js构建服务器端选软应用

  • Vercel公司 提供 静态网站 托管

从本质上来说(Under the hood),Next.js为 React 抽象和自动化配置了工具,例如 bunding, compiling 等。这样开发者可以聚焦在应用程序开发而不是浪费时间来配置它。

主要功能

Next.js 主要功能

功能

说明

Routing

基于文件系统路由到服务器组件,支持布局(layouts),嵌套路由(nested routing),负载状态(loading state),错误处理(error handing)等等

Rending

通过客户端和服务器端的渲染,支持静态和动态渲染优化,可以在边缘串流以及 Node.js Atlas 运行时

Data Fetching

在服务器组件中采用 async/await 获取数据,并且有一个扩展的 fetch API用于请求记忆(request memoization),数据缓存(data caching)和重新验证(revalidation)

Styling

支持各种样式,包括CSS模块,Tailwind CSS 和 CSS-in-JS

Optimizations

图像、字体和脚本优化来提高应用的核心web生命和用户体验

TypeScript

支持TypeScript,更好的类型检查和更高效的编译,以及自定义TypeScript插件和类型检测器

参考