- Introduced Vue3 exercises covering composable API, reactivity, lifecycle hooks, and built-in components. - Added structured interview plan for frontend candidates focusing on HTML, CSS, JavaScript, TypeScript, and Vue. - Included starter files for each exercise and detailed README documentation for guidance.
Vue3(组合式 API + 响应式原理)
你的学习文档里这一章的定位是 Vue3(组合式API + 响应式原理)。这一章我按这个方向来拆,不再重复 Vue2 的 Options API 主线,而是重点转到 Vue3 的组合式写法和响应式思维。
学完后你应该掌握
- Vue3 和 Vue2 的核心差异
createAppsetup()refreactivetoReftoRefsreadonlycomputedwatchwatchEffectnextTick- 组合式 API 生命周期
- 模板
ref props和emit- 组件
v-model slotprovide/injectexpose- composable 的基本抽离方式
script setupdefinePropsdefineEmitsdefineExposeTeleportSuspenseTransition- 如何用 Vue3 写一个小型管理面板
这一章在解决什么
Vue2 更强调“选项式组织”。
Vue3 这一章要解决的是:
- 逻辑如何按功能组织,而不是按选项分散
- 响应式数据如何在
setup()里组合 - 一段可复用逻辑如何抽成 composable
- 组件之间如何在组合式 API 下继续通信
全部知识点清单
基础入口
createAppsetup()return
响应式核心
refreactivetoReftoRefsreadonlycomputedwatchwatchEffectnextTick
生命周期与 DOM
onBeforeMountonMountedonBeforeUpdateonUpdatedonBeforeUnmountonUnmounted- 模板
ref expose
组件通信
propsemit- 组件
v-model slotprovideinject
逻辑复用
- composable
- 异步状态管理
loadingerror
工程化语法与内置组件
script setupdefinePropsdefineEmitsdefineExposeTeleportSuspenseTransition
学习顺序
createApp、setup()和refreactive和computedwatch和watchEffect- 生命周期和模板
ref props和emitslot与provide/inject- composable 与异步状态
toRefs、readonly等响应式辅助工具nextTick和组件v-model- before 系列生命周期与
expose Teleport、Suspense、Transitionscript setup宏- 综合小页面
练习目录
- 01-create-app-and-ref/README.md
- 02-reactive-and-computed/README.md
- 03-watch-and-watch-effect/README.md
- 04-lifecycle-and-template-ref/README.md
- 05-props-and-emits/README.md
- 06-slots-and-provide-inject/README.md
- 07-composable-and-async/README.md
- 08-final-dashboard/README.md
- 09-reactivity-helpers/README.md
- 10-next-tick-and-component-v-model/README.md
- 11-before-hooks-and-expose/README.md
- 12-built-in-components/README.md
- 13-script-setup-macros/README.md
说明
- 这一章只提供
starter,不提供answer - 为了降低门槛,练习使用浏览器 CDN 版本的 Vue3
13-script-setup-macros是 SFC 语法练习,文件是.vuestarter,不是直接双击运行的 HTML- 如果后面你要把这一章升级成
Vite + Vue3,我可以再继续补工程化版本