目录
[Q1:端口 3000 被占用怎么办?](#Q1:端口 3000 被占用怎么办?)
[Q3:Nuxt 4 和 Nuxt 3 有什么区别?](#Q3:Nuxt 4 和 Nuxt 3 有什么区别?)
你是否听说过 Nuxt.js?这是一个基于 Vue 3 的全栈框架,能帮你快速构建 SSR 应用、静态网站,还能写后端 API。听起来很强大对吧?但很多新手一上来就被各种概念绕晕了------SSR、SSG、服务端渲染......别急,今天我们先不讲这些,先把项目跑起来!
一、环境准备
在开始之前,确保你的电脑已经安装了以下工具:
-
Node.js:版本 18.x 或更高(推荐 20.x)
-
包管理器:npm、pnpm 或 yarn(推荐 pnpm,更快更省空间)
-
代码编辑器:VS Code(推荐安装 Vue 官方插件)
打开终端,输入以下命令检查 Node.js 版本:
node -v
如果显示版本号在 18 以上,就可以继续了。如果没有安装 Node.js,去 官网 下载安装即可。
二、创建项目
Nuxt 官方提供了脚手架工具,一行命令就能创建项目。打开终端,执行:
npx nuxi@latest init my-nuxt-app
执行后会问你几个问题,直接回车选择默认选项即可:
-
Which package manager would you like to use? → 选择你喜欢的包管理器
-
Do you want to install the dependencies? → 选择 Yes
等待依赖安装完成,进入项目目录:
cd my-nuxt-app
💡 小提示 :如果你用的是 pnpm,可能会提示需要先执行
pnpm install,照做就行。
三、认识目录结构
项目创建好后,用 VS Code 打开,你会看到这样一个简洁的目录结构:
my-nuxt-app/
├── .nuxt/ # 构建产物,不用管
├── node_modules/ # 依赖包
├── app.vue # 根组件(Nuxt 4 新位置)
├── nuxt.config.ts # 配置文件
├── package.json # 项目信息
└── tsconfig.json # TypeScript 配置
跟传统的 Vue 项目相比,Nuxt 的目录结构非常简洁。注意到 app.vue 了吗?这是 Nuxt 4 的新变化,根组件放在根目录,入口文件 app.vue 直接写页面内容。
打开 app.vue 看看,内容超级简单:
<template>
<div>
<NuxtWelcome />
</div>
</template>
<NuxtWelcome /> 是 Nuxt 官方的欢迎组件,展示一个漂亮的欢迎页面。等下我们会把它换成自己的内容。
四、启动开发服务器
万事俱备,让我们把项目跑起来!在项目根目录执行:
# npm
npm run dev
# pnpm
pnpm dev
# yarn
yarn dev
终端会显示类似这样的输出:
Nuxt 4.x.x with Nitro 2.x.x
> Local: http://localhost:3000/
> Network: http://192.168.1.xxx:3000/
打开浏览器,访问 http://localhost:3000,你就能看到 Nuxt 的欢迎页面了!
五、改点代码试试
光看欢迎页面多没意思,我们来改点代码。把 app.vue 改成这样:
<script setup lang="ts">
const message = 'Hello Nuxt 4!'
</script>
<template>
<div class="container">
<h1>{{ message }}</h1>
<p>欢迎来到 Nuxt 4 的世界</p>
</div>
</template>
<style scoped>
.container {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
min-height: 100vh;
}
h1 {
color: #00dc82;
font-size: 3rem;
margin-bottom: 1rem;
}
p {
color: #666;
font-size: 1.2rem;
}
</style>
保存文件,浏览器会自动刷新(Nuxt 内置了热更新),你就能看到自己写的页面了!
🎉 恭喜! 你已经成功创建并运行了一个 Nuxt 4 项目!
六、常见问题
Q1:端口 3000 被占用怎么办?
默认端口是 3000,如果被占用,可以在 nuxt.config.ts 中修改:
export default defineNuxtConfig({
devServer: {
port: 3001
}
})
Q2:启动时报错怎么办?
大部分启动问题都是依赖安装不完整导致的,试试删除 node_modules 重新安装:
rm -rf node_modules
rm pnpm-lock.yaml # 或 package-lock.json
pnpm install
Q3:Nuxt 4 和 Nuxt 3 有什么区别?
Nuxt 4 是 Nuxt 3 的升级版,主要改进包括:更好的性能、更简洁的目录结构(app/ 目录)、更强大的服务端能力。对于新手来说,直接学 Nuxt 4 就行。
总结
今天我们完成了:
-
✅ 环境准备:安装 Node.js 和包管理器
-
✅ 创建项目:一行命令搞定
-
✅ 认识目录结构:比想象中简单
-
✅ 启动开发服务器:
pnpm dev就能跑 -
✅ 修改代码体验热更新:所见即所得
看到这里,你会发现 Nuxt 上手真的不难。不用管什么 SSR、SSG,先把项目跑起来,后面再慢慢学原理。下一篇文章,我们来讲讲 Nuxt 的路由系统,看看如何自动生成路由。
觉得有帮助?点赞、在看、分享三连走起!有问题欢迎评论区留言,我们一起交流学习 💪