这是我参与「第五届青训营 」伴学笔记创作活动的第6天
之前这篇与另外一篇在同一时间发了,今天重新补发
这节课主要内容
- React 的历史与应用 - 介绍 React 的发展历史以及应用场景。
- React 的设计思路 - 介绍 React 的设计思想,为什么 React 要设计成这样。
- React hooks 的写法 - 介绍基础的 React hooks 写法,以及常用的 hooks。
组件化
- 组件是组件的组合/原子组件
- 组件内拥有状态,外部不可见
- 父组件可将状态传入组件内部
React 的设计思路
UI编程痛点
- 状态更新,UI不会自动更新,需要手动地调用DOM进行更新
- 欠缺基本的代码层面的封装和隔离,代码层面没有组件化
- UI之间的数据依赖关系,需要手动维护,如果依赖链路长,则会遇到“Callback Hell”
React脚手架意义
- 脚手架是开发现代Web应用的必备
- 充分利用 Webpack,Babel,ESLint等工具辅助项目开发
- 零配置,无需手动配置繁琐的工具即可使用
- 关注业务,而不是工具配置
事件对象
- 可以通过事件处理函数的参数获取到事件对象
- React中的事件对象叫做:合成事件
- 合成事件:兼容所有浏览器,无需担心跨浏览器兼容问题
- 除兼容所有浏览器外,它还拥有和浏览器原生事件相同的接口,包括 stopPropagation()和 preventDefault()
- 如果你想获取到原生事件对象,可以通过 nativeEvent 属性来进行获取
应用级框架科普
- 硅谷明星创业公司Vercel的React开发框架,稳定,开发体验好,支持Unbundled,SWC等,其同样有Serverless一键部署平台帮助开发者快速完成部署。口号是“Let'Make Web Faster”
- 字节跳动Web infra团队研发的全栈开发框架,内置了很多开箱即用的能力与最佳实践,可以减少很多调研选择工具的时间。
- 无API思想的全栈开发框架,开发过程中无需写API调用与CRUD逻辑,适合前后端紧密结合的小团队项目。