以下是老曹完整的 Svelte 教程教案,共 20 节课,从基础语法到高级特性、状态管理、路由、与后端集成、性能优化等现代 Svelte 开发所需的核心知识体系。
📚 一、课程概述
✅ 课程目标
- 掌握 Svelte 的基本语法和组件化开发思想
- 理解响应式编程(Reactivity)原理及使用方式
- 学会使用 Svelte 的生命周期、事件通信、绑定机制
- 掌握 Svelte Router 实现单页应用(SPA)导航
- 使用 Svelte Store 进行全局状态管理
- 结合后端 API 实现真实数据交互(如 RESTful / GraphQL)
- 构建完整项目并部署上线
🧑🏫 适合人群
- 前端开发者:希望学习新一代前端框架
- Vue/React 开发者:想了解更轻量级的替代方案
- 初学者:具备 HTML/CSS/JS 基础,想快速构建高性能应用
- 想掌握全栈开发中前端部分的开发者
⏱️ 总课时:20 节课(每节约60分钟)
🗂️ 二、课程大纲(共 20 节)
课次 | 主题 | 内容概要 |
---|---|---|
第1节 | Svelte 简介与环境搭建 | Svelte 是什么?与 React/Vue 的区别、创建第一个 Svelte 项目(Vite + Svelte) |
第2节 | 基础语法与组件结构 | .svelte 文件结构、模板语法、表达式、文本插值、属性绑定 |
第3节 | 数据绑定与响应式变量 | let 定义变量、双向绑定 (bind:value )、条件渲染 ({#if} ) |
第4节 | 事件处理与自定义事件 | 组件内事件绑定、on:click 、使用 createEventDispatcher 发送自定义事件 |
第5节 | 列表渲染与 key | {#each} 渲染列表、key 的作用、动态更新列表数据 |
第6节 | 表单与验证 | input 绑定、表单提交、基础验证逻辑 |
第7节 | 生命周期钩子 | onMount , beforeUpdate , afterUpdate , onDestroy 的使用场景 |
第8节 | 组件通信 | props 传值、slot 插槽、父子组件通信 |
第9节 | 动态组件与异步加载 | <svelte:component> 动态切换组件、懒加载组件 |
第10节 | 可组合函数与自定义逻辑 | 创建可复用的业务逻辑模块(类似 Vue Composition API) |
第11节 | 全局状态管理(Store) | writable/store 的创建与使用、跨组件共享状态 |
第12节 | 路由管理(SvelteKit 入门) | 安装配置 SvelteKit、页面路由、嵌套路由、动态路由 |
第13节 | HTTP 请求与 API 调用 | 使用 fetch 请求数据、封装请求工具类、错误处理 |
第14节 | 动画与过渡效果 | 使用 svelte/animate 实现组件进入/离开动画 |
第15节 | 样式与主题管理 | scoped CSS、全局样式、CSS Modules、Tailwind 集成 |
第16节 | 表单进阶与 Formik 替代方案 | 复杂表单验证、状态同步、第三方库集成(如 svelte-forms-lib) |
第17节 | SSR 与静态站点生成 | 在 SvelteKit 中实现服务端渲染、SEO 优化 |
第18节 | TypeScript 支持 | 在 Svelte 中启用 TypeScript、类型定义、组件类型约束 |
第19节 | 项目实战 | 构建一个完整的 Todo 应用或博客系统,包含 CRUD、登录认证、API 对接 |
第20节 | 性能优化与部署 | 代码分割、打包优化、部署到 Vercel/Netlify/GitHub Pages |
📘 三、教学特色
- 理论 + 实战结合:每节课都配有动手练习和小项目
- 现代 Svelte 技术栈:涵盖 SvelteKit、TypeScript、Tailwind 等主流技术
- 性能调优专题:讲解 Svelte 最佳实践与常见性能瓶颈
- 文档与资源推荐:提供官方文档查阅技巧、优质社区资源推荐