这门课解决什么问题,适合什么基础

很多初学者刚接触 React 时,往往会被它从类组件向函数式组件的转换绊住。日常业务里,我们面对的不再是复杂的生命周期函数,而是各种 Hook 的组合。如果你之前只写过零散的类式组件,或者跟着旧教程学过基础语法,但在实际开发中一写业务逻辑就遇到状态更新不及时、接口请求重复触发、组件卸载后还在执行异步操作导致报错等问题,那么这门课就是帮你梳理这块逻辑的。它不负责带你从零认识前端开发,而是聚焦于函数式组件的核心运作机制,重点解决状态怎么存、副作用怎么控制、本地接口数据怎么模拟和流转这些高频开发场景。资料适合已经对 HTML、CSS 和 JavaScript 基本语法有了解,并且能独立看懂简单 ES6 语法(如箭头函数、解构赋值)的读者。如果你完全没写过前端页面,建议先补齐基础再看;如果你已经能用类组件写点东西,想弄懂现在主流的函数式写法,这套资料的切入角度正好合适。

建议先看哪几块,资料怎么配合练习

拿到资料后,不要按顺序从头到尾一口气看完,这种学法在编程领域特别容易看完就忘。建议先从工程目录结构和创建工程这两块看起,自己在编辑器里把基础环境跑通,确认本地能正常启动页面。接着直接跳到计数器示例和 useState 的部分,跟着视频把最基础的状态修改逻辑敲一遍。这里要特别提醒,资料中关于引用数据类型的状态更新是第一个容易踩坑的地方,很多新手习惯直接修改对象或数组的原值,导致视图不刷新,练习时一定要对照着视频里的写法,体会展开运算符在状态更新里的作用。随后进入 useEffect 部分,这是整套资料的重头戏,不要只看概念,重点放在依赖项和清理工作这两块。练习时,可以本地起一个简单的 json-server 服务,按照资料里的数据模拟方式,自己写一个包含增删改查的小页面,把状态管理和副作用请求结合起来跑通,这样学下来才不虚。

学完能独立做什么

把这套函数式编程的资料啃完并跟着敲完代码后,你应该能独立承担一些中小型业务模块的前端开发。具体来说,拿到设计稿和接口文档后,你能熟练拆分函数式组件,用 useState 管理表单输入和列表数据,用 useEffect 处理页面初始加载时的数据请求,并且能正确设置依赖项来避免不必要的重复请求。当遇到组件切换或页面卸载时,你也能写出对应的清理逻辑,把未完成的异步任务或定时器关掉,不再报那些让人摸不着头脑的内存泄漏警告。此外,通过资料里关于本地数据模拟的实践,你在后端接口还没开发好的阶段,也能自己用 json-server 搭一个假服务,把前端的增删改查逻辑全部走通,不用干等别人。这套资料不教你复杂的架构设计,但能把函数式组件最核心的开发习惯帮你理顺,让你在实际写业务时心里有底。

课程目录

课程目录69 集
  • 1 组件化 (02:58).mp4
  • 2 类式组件和函数式组件简介 (04:49).mp4
  • 3 创建工程 (04:23).mp4
  • 4 工程目录结构 (06:01).mp4
  • 5 函数式组件 (04:35).mp4
  • 6 从一个计数器开始 (08:17).mp4
  • 7 hook简介 (03:47).mp4
  • 8 useState的使用 (08:39).mp4
  • 9 useState的使用-引用数据类型 (11:02).mp4
  • 10 引入useEffect (06:43).mp4
  • 11 useEffect初体验 (06:11).mp4
  • 12 useEffect的依赖项 (07:18).mp4
  • 13 useEffect的清理工作 (06:51).mp4
  • 14 数据模拟方式 (02:07).mp4
  • 15 json-server的基本使用 (06:18).mp4
  • 16 json-server添加数据 (02:43).mp4
  • 17 json-server根据id删除数据 (01:15).mp4
  • 18 json-server根据id修改数据 (03:14).mp4
  • 19 json-server的配置文件 (06:34).mp4
  • 20 组件通信-父传子 (03:57).mp4
  • 21 表单数据收集-受控组件 (05:54).mp4
  • 22 添加数据-子传父 (07:11).mp4
  • 23 删除数据-子传父 (03:55).mp4
  • 24 父子组件通信小结 (02:19).mp4
  • 25 useRef用法 (04:27).mp4
  • 26 受控和非受控组件 (07:16).mp4
  • 27 多输入的简化写法 (12:14).mp4
  • 28 输入框数据清空 (05:36).mp4
  • 29 useContext用法 (09:13).mp4
  • 30 多个useContext (03:54).mp4
  • 31 鼠标跟随案例 (06:59).mp4
  • 32 自定义Hook-鼠标跟随案例 (10:37).mp4
  • 33 loading状态控制 (08:25).mp4
  • 34 error错误处理 (08:51).mp4
  • 35 自定义Hook-请求数据 (12:03).mp4
  • 36 PropTypes的使用 (11:11).mp4
  • 37 路由简介 (02:18).mp4
  • 38 路由的简单使用 (05:43).mp4
  • 39 Link的基本使用 (04:17).mp4
  • 40 NavLink的基本使用 (02:35).mp4
  • 41 NavLink的className (02:59).mp4
  • 42 重定向Navigate (02:21).mp4
  • 43 useRoutes和路由表的使用 (05:18).mp4
  • 44 NotFound (03:00).mp4
  • 45 路由组件懒加载 (08:34).mp4
  • 46 嵌套路由 (05:33).mp4
  • 47 路由参数-动态url (08:56).mp4
  • 48 searchParams参数 (03:17).mp4
  • 49 可编程式导航 (05:48).mp4
  • 50 navigate的第二个参数 (03:38).mp4
  • 51 路由表 (08:05).mp4
  • 52 路由配置示例 (03:06).mp4
  • 53 路由守卫(上) (07:25).mp4
  • 54 路由守卫(中) (06:41).mp4
  • 55 路由守卫(下) (07:07).mp4
  • 56 React中的css (41:08).mp4
  • 57 React中的插槽 (30:31).mp4
  • 58 网页中使用redux (41:01).mp4
  • 59 React中使用redux(上) (21:34).mp4
  • 60 React中使用redux(下) (23:45).mp4
  • 61 react-redux的使用(上) (22:47).mp4
  • 62 react-redux的使用(中) (20:11).mp4
  • 63 react-redux的使用(下) (17:47).mp4
  • 64 ReduxToolkit(RTK)的使用介绍 (37:55).mp4
  • 65 优化相关-memo方法 (23:32).mp4
  • 66 优化相关-useMemo (18:53).mp4
  • 67 优化相关-useCallback (13:38).mp4
  • 68 优化相关-useImperatiativeHandle (23:44).mp4
  • 69 优化相关-useImperativeHandle示例 (16:15).mp4