1. 基础知识

HTML、CSS、JavaScript 基础

熟练掌握原生 Web 技术,尤其是 JavaScript 的 ES6+ 语法。

重点学习:

解构赋值、箭头函数、模板字符串
模块化(import 和 export)
Promise 和 async/await

Vue 3 基础

官方文档:Vue 3 文档

学习内容:

Vue 实例创建:createApp()
模板语法(插值、指令如 v-bind、v-for、v-if 等)
数据绑定(单向绑定 插值语法 和双向绑定 v-model)
事件处理(v-on 或 @ 简写)
计算属性和侦听器
生命周期钩子(如 onMounted、onUpdated)

2. Composition API

Vue 3 的最大变化是引入了 Composition API,建议重点掌握。

基本概念

setup() 函数
响应式数据:ref() 和 reactive()
计算属性:computed()
侦听器:watch() 和 watchEffect()
生命周期钩子(如 onMounted)

进阶使用

模块化逻辑(使用自定义 Hooks 函数)
provide 和 inject 实现组件通信
与 Options API 的对比和结合使用

3. 组件化开发

基础组件

父子组件通信(props 和 emit)
插槽(默认插槽、具名插槽、作用域插槽)
动态组件和异步组件
组件生命周期

高级组件

Teleport:将 DOM 节点传送到其他位置
Suspense:处理异步组件加载
自定义指令

4. Vue Router(路由管理)

安装和配置
配置路由表和路由实例
路由跳转(router-link 和编程式导航)
功能扩展
动态路由和路由参数
嵌套路由
路由守卫(beforeEach 和 afterEach)
懒加载
配置路由组件的按需加载

5. Pinia(状态管理)

Vue 3 推荐的状态管理工具是 Pinia,比 Vuex 更加轻量。

基础使用

创建和使用 Pinia Store
定义 state、getter 和 action
组件中使用 store

进阶使用

Store 的模块化
与 Composition API 结合
持久化状态(如 localStorage)

6. 网络请求和数据管理

使用 Axios 发起 HTTP 请求
配置全局 Axios 实例
结合 Pinia 统一管理数据
数据交互的优化(如防抖、节流)

7. 项目实践

将 Vue 3 学到的知识融入实际项目中,完整开发一个单页应用(SPA)。

工具链

使用 Vue CLI 或 Vite 初始化项目
配置环境变量(.env 文件)
配置别名(如 @ 表示 src 路径)

UI 框架

学习并集成 UI 组件库(如 Element Plus、Naive UI、Vant 3)

项目开发

开发完整的功能模块(如用户注册、商品展示)
实现组件复用、路由管理和状态管理

8. 性能优化

代码优化

按需加载和路由懒加载
使用 defineAsyncComponent 加载组件
使用 keep-alive 缓存组件

开发优化

配置生产环境优化打包
利用 Vue Devtools 进行调试
打包工具的性能优化(如 Tree Shaking)

9. TypeScript 和 Vue 3

Vue 3 原生支持 TypeScript,学习可以提升项目的可维护性。

在项目中集成 TypeScript
定义组件的类型
使用泛型定义 Props 和事件

10. 学习资源

官方文档:Vue 3 文档

Vue Mastery 和 Vue School 视频教程
B 站 Vue 3 教程

开源项目:

示例项目:查看 GitHub 上的 Vue 3 示例项目,学习最佳实践。