Nuxt3_扫盲 入门与原理介绍【学习笔记】

Nuxt 3 入门与原理介绍

💡 什么是 Nuxt 3?

Nuxt 3 是基于 Vue 3Vite 打造的全栈前端框架,支持:

  • 服务端渲染(SSR)
  • 静态站点生成(SSG)
  • 单页应用(SPA)
  • 构建全栈应用(支持 API)

Nuxt 3 是 Vue 的“加强版”,帮你简化项目结构和开发流程。


🔧 核心原理

功能 Nuxt 如何处理
✅ 页面路由 自动根据 pages/ 目录结构生成
✅ 组件自动引入 自动注册 components/ 中的组件
✅ SSR / SSG / SPA 内置支持,通过命令或配置切换
✅ API 接口 支持在 server/api/ 写后端逻辑
✅ 状态管理 推荐使用 pinia(Vue 官方状态库)
✅ 构建性能 默认使用 Vite(构建快)或切换 Webpack
✅ TypeScript 原生支持

🚀 快速入门

1. 创建项目

npx nuxi init my-nuxt-app
cd my-nuxt-app
npm install
npm run dev

2. 目录结构

my-nuxt-app/
├── pages/             # 页面目录(自动成为路由)
├── components/        # 组件目录(自动引入)
├── layouts/           # 布局页面
├── app.vue            # 全局入口文件
├── nuxt.config.ts     # 配置文件
├── server/api/        # 后端接口目录(构建全栈)

✏️ 示例代码

页面:pages/index.vue

<template>
  <h1>欢迎来到 Nuxt 3</h1>
</template>

访问 http://localhost:3000 查看效果。


API 接口:server/api/hello.ts

export default defineEventHandler(() => {
  return { message: '你好 Nuxt API' }
})

接口访问地址:http://localhost:3000/api/hello

返回结果:

{ "message": "你好 Nuxt API" }

客户端调用接口

const { data } = await useFetch('/api/hello')

✅ Nuxt 3 适合人群

  • 使用 Vue,但不想手动配置构建、路由、SSR 的开发者
  • 希望构建高性能、SEO 友好的网站/应用
  • 想一套代码做前端 + 后端 API 的开发者

📚 推荐学习资源

  • 中文官网:https://nuxt.com.cn
  • 官方文档:https://nuxt.com
  • 视频课程:B 站搜索「Nuxt3 入门」

主题测试文章,只做测试使用。发布者:Walker,转转请注明出处:https://joyjs.cn/archives/4425

(0)
Walker的头像Walker
上一篇 2025年3月27日 15:01
下一篇 2025年4月20日 19:12

相关推荐

  • 深入理解ES6 001【学习笔记】

    块级作用域绑定 之前的变量声明var无论在哪里声明的都被认为是作域顶部声明的,由于函数是一等公民,所以顺序一般是function 函数名()、var 变量。 块级声明 块级声明用于声明在指定块的作用域之外无法访问的变量。块级作用域存在于: 函数内部 块中(字符和{和}之间的区域) 临时死区 javascript引擎在扫描代码发现变量声明时,要么将它们提升至作…

    个人 2025年3月8日
    1.4K00
  • 深入理解ES6 013【学习笔记】

    用模块封装代码 javascript用“共享一切”的方法加载代码,这是该语言中最容易出错且另人感到困惑的地方。其他语言使用诸如包这样的概念来定义代码作用域。在es6以前,在应用程序的每一个js中定义的一切都共享一个全局作用域。随着web应用程序变得更加复杂,js代码的使用量也开始增长,这一做法会引起问题,如命名冲突和安全问题。es6的一个目标是解决作用域问题…

    个人 2025年3月8日
    93200
  • 深入理解ES6 012【学习笔记】

    代理(Proxy)和反射(Reflection)API 代理是一种可以拦截并改变底层javascript引擎操作的包装器,在新语言中通过它暴露内部运作对象,从而让开发者可以创建内建的对象。 代理陷阱 覆写的特性 默认特性 get 读取一个属性值 Reflect.get() set 写入一个属性值 Reflect.set() has in操作符 Reflect…

    个人 2025年3月8日
    92600
  • TS珠峰 002【学习笔记】

    泛型 /* * @Author: error: error: git config user.name & please set dead value or install git && error: git config user.email & please set dead value or install git &a…

    个人 2025年3月27日
    1.3K00
  • TS珠峰 001【学习笔记】

    课程大纲 搭建 TypeScript 开发环境。 掌握 TypeScript 的基础类型,联合类型和交叉类型。 详细类型断言的作用和用法。 掌握 TypeScript 中函数、类的类型声明方式。 掌握类型别名、接口的作用和定义。 掌握泛型的应用场景,熟练应用泛型。 灵活运用条件类型、映射类型与内置类型。 创建和使用自定义类型。 理解命名空间、模块的概念已经使…

    个人 2025年3月27日
    1.3K00

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
欢迎🌹 Coding never stops, keep learning! 💡💻 光临🌹