目录
[1️⃣ Vue 3 是什么?](#1️⃣ Vue 3 是什么?)
[2️⃣ Vite 是什么?](#2️⃣ Vite 是什么?)
[3️⃣ Vue Router 是什么?](#3️⃣ Vue Router 是什么?)
[4️⃣ Pinia 是什么?](#4️⃣ Pinia 是什么?)
[5️⃣ Axios 是什么?](#5️⃣ Axios 是什么?)
[6️⃣ 它们是怎么配合在一起的?](#6️⃣ 它们是怎么配合在一起的?)
1️⃣ Vue 3 是什么?
一句话:Vue 3 = 做网页界面的"装修框架"
-
网页 = 房子
-
界面上的各种按钮、表单、列表、弹窗 = 家具、墙、灯
-
Vue 3 = 一整套"装修体系",帮你 更快、更有条理地搭建这些界面
它的特点:
-
组件化 :
相当于把页面拆成一个个小积木(例如:导航栏组件、列表组件、弹窗组件),
做好一个就可以到处复用,不用每个页面都重新写。
-
响应式 :
数据一变,界面自动跟着变。
比如:
count从 1 变成 2,页面上显示的数字会自动更新,不用你手动操作 DOM。
可以简单理解:
不用原生 JS 一砖一瓦慢慢砌房子,而是用 Vue 3 这套体系快速搭模块,搭界面。
2️⃣ Vite 是什么?
一句话:Vite = 前端项目的"工程工具 / 打包&开发服务器"
它主要帮你做两件事:
-
开发时:提供一个"本地小服务器"
-
你写的代码一保存,浏览器就自动刷新
-
支持模块化
import/export,无需自己配置一堆复杂的东西
-
-
上线前:打包、优化代码
-
把很多
.js/.vue/.css文件打包压缩 -
让浏览器加载更快(减小体积、合并请求)
-
比喻一下:
Vue 3 是"装修框架"
Vite 是负责"施工现场管理 + 最终打包验收"的工程总包
两者通常搭配使用:"Vue 3 + Vite" = 现代 Vue 项目的标准组合。
3️⃣ Vue Router 是什么?
一句话:Vue Router = Vue 项目的"路由导航系统"
在单页应用(SPA)里:
-
页面看起来有很多"页面":主页、登录页、详情页......
-
但其实浏览器只加载了一个
index.html,其他页面是靠 JS 控制"切换视图"。
Vue Router 做的事情就是:
-
把 URL 地址 (比如
/login、/user/123)和 对应要显示的组件 关联起来
-
当地址栏变化时,决定当前应该展示哪个组件
比喻:
整个 Vue 项目是一栋大型商场
Vue Router 是商场里的 "导视系统 + 电梯 / 自动扶梯"
你去 1 楼超市:
/market你去 3 楼影院:
/cinema它负责把你"带"到对应的"楼层页面(组件)"。
4️⃣ Pinia 是什么?
一句话:Pinia = Vue 的"全局数据仓库(状态管理工具)"
问题:项目一大,组件很多,它们之间需要共享数据,比如:
-
当前登录用户信息
-
购物车里的商品
-
全局的主题配置(深色 / 浅色)
如果每个组件都靠 props 一层层传,或者各种事件乱飞,很快就乱套。
Pinia 的作用:
-
提供一个 集中放数据的地方(仓库 store)
-
任意组件都可以:
-
从仓库里 读数据
-
调用仓库里的方法 改数据
-
比喻:
没有 Pinia:每个部门自己保存一份"员工表",互相传 Excel
有了 Pinia:公司搞了一个"统一人事系统",大家都从这里查和改
总结:Pinia = "全局状态管理工具",用来管理整个应用共享的数据。
5️⃣ Axios 是什么?
一句话:Axios = 浏览器里"专门用来发请求拿后端数据"的工具
浏览器要和后端接口通信,比如:
-
登录:把账号密码发给后端
-
获取列表数据:向接口发
GET /api/list -
提交表单:发
POST /api/xxx
原生可以用 fetch 或 XMLHttpRequest,但写起来有点啰嗦,所以大家常用 Axios:
它的好处:
-
写法简单:
axios.get('/api/user') -
支持请求 / 响应拦截器(统一加 token、统一处理错误)
-
支持配置基础地址、超时时间等
比喻:
后端接口 = 各种业务系统
Axios = 一个已经封装好的"快递小哥":
- 你只要告诉他地址(URL)和要送的东西(数据),他帮你送去并带回结果(响应)
6️⃣ 它们是怎么配合在一起的?
把你那句话拆解一下:
"前端:Vue 3 + Vite(使用标准 JavaScript 语法),配合常用生态如 Vue Router、Pinia、Axios,构建响应式界面实现业务所需的交互体验"
可以理解为:
-
Vue 3:负责搭界面(组件、响应式数据)
-
Vite:负责开发、打包、优化整个项目
-
Vue Router:负责"页面之间怎么跳转"
-
Pinia:负责"多个页面之间共享的数据"
-
Axios:负责"前端跟后端怎么通信,拿/传数据"
合在一起,就是:
用 Vue 3 做前端界面,
用 Vite 提供开发环境和打包,
再用 Vue Router 管理路由、Pinia 管理全局数据、Axios 调接口,
搭出一个 响应快、结构清晰、可维护的前端应用。