创建一个新的 Next.js 应用
系统要求
开始前请确保您的系统满足以下要求:
- Node.js 18.18 或更高版本
- macOS、Windows(含 WSL)或 Linux 系统
自动安装
创建 Next.js 应用最快的方式是使用 create-next-app
,它会自动为您完成所有设置。运行以下命令创建项目:
安装过程中会显示以下提示:
完成提示后,create-next-app
将创建以项目名命名的文件夹并安装所需依赖。
手动安装
要手动创建 Next.js 应用,请先安装必要依赖包:
然后在 package.json
文件中添加以下脚本:
这些脚本对应应用开发的不同阶段:
next dev
:启动开发服务器next build
:构建生产环境应用next start
:启动生产服务器next lint
:运行 ESLint 检查
创建 pages
目录
Next.js 使用文件系统路由,意味着应用中的路由由文件结构决定。
在项目根目录创建 pages
文件夹,然后添加 index.tsx
文件作为首页(/
):
接着在 pages/
下添加 _app.tsx
文件定义全局布局。了解更多关于自定义 App 文件的信息。
最后在 pages/
下添加 _document.tsx
文件控制服务器初始响应。了解更多关于自定义 Document 文件的信息。
创建 public
文件夹(可选)
在项目根目录创建 public
文件夹 存放静态资源如图片、字体等。public
中的文件可通过根路径(/
)引用。
例如 public/profile.png
可引用为 /profile.png
:
运行开发服务器
- 执行
npm run dev
启动开发服务器 - 访问
http://localhost:3000
查看应用 - 编辑
pages/index.tsx
文件并保存,浏览器中将实时更新
配置 TypeScript
最低 TypeScript 版本要求:
v4.5.2
Next.js 内置 TypeScript 支持。要将 TypeScript 添加到项目,只需将文件重命名为 .ts
/ .tsx
并运行 next dev
。Next.js 会自动安装必要依赖并生成包含推荐配置的 tsconfig.json
文件。
更多信息请参考 TypeScript 参考文档。
配置 ESLint
Next.js 内置 ESLint 支持。使用 create-next-app
创建新项目时会自动安装必要包并配置正确设置。
要为现有项目手动添加 ESLint,在 package.json
中添加 next lint
脚本:
然后运行 npm run lint
,系统将引导您完成安装和配置流程:
您将看到如下提示:
? 您希望如何配置 ESLint?
❯ 严格模式(推荐)
基础模式
取消
- 严格模式:包含 Next.js 基础 ESLint 配置及更严格的 Core Web Vitals 规则集。首次设置 ESLint 时推荐此配置
- 基础模式:仅包含 Next.js 基础 ESLint 配置
- 取消:跳过配置。如需自定义 ESLint 配置可选择此项
选择"严格"或"基础"模式后,Next.js 会自动安装 eslint
和 eslint-config-next
依赖,并在项目根目录创建包含所选配置的 .eslintrc.json
文件。
此后可随时运行 next lint
进行错误检查。ESLint 设置完成后,每次构建(next build
)时也会自动运行。错误会导致构建失败,而警告则不会。
更多信息请参考 ESLint 插件文档。
配置绝对导入和模块路径别名
Next.js 原生支持 tsconfig.json
和 jsconfig.json
文件中的 "paths"
和 "baseUrl"
选项。
这些选项允许您将项目目录映射为绝对路径,使模块导入更简洁清晰。例如:
要配置绝对导入,在 tsconfig.json
或 jsconfig.json
中添加 baseUrl
配置选项。例如:
除配置 baseUrl
路径外,还可使用 "paths"
选项设置模块路径"别名"。
例如以下配置将 @/components/*
映射到 components/*
:
每个 "paths"
都相对于 baseUrl
位置进行解析。