目标:
reactv18:->
1.核心的22中api
2路由
3.数据状态管理:redux
项目:
1.b端
业务闭环:登录方案、权限设计、用户管理方案、业务功能、系统架构设计、路由设计
流程闭环:开发环境、生产环境、测试环境、代码规范、分支管理规范、项目自动化部署、静态资源管理方案
性能优化:渲染优化、网络优化、编译优化、自动化打包优化、业务开发效率优化、用户体验优化、
2.c端 ssr服务器渲染项目
业务:ssr登录健全方案、与spa架构差异、nodejs异构、有无差异
流程:前后端生产环境、开发环境、自动化部署方案、性能测试、服务器稳定性测试
性能:渲染优化、网络朋友花、编译优化、自动化打包部署、业务开发效率优化、用户体验优化
工程化 :webpack
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
1 初始化项目:
//CRA脚手架创建项目
npx create-react-app my-app
npm start
1
2
3
4
2 核心文件内容分析
这个核心文件中导入了React和ReactDOM
严格模式作用?
1.不安全的生命周期方法:警告某些在未来版本会被弃用的生命周期
2.警告使用过时或遗留的api
3.意外的富足用
4.警告与旧版本react不兼容的部分
1
2
3
4
面试题:1.React和ReactDOM有啥区别?
1.react:这时React库的核心,定义了React组件的创建和生命周期方法,以及react元素的概念,是react的引擎
2.recat-dom:这个库提供了在游览器环境中使用react的方法,例如将react组件渲染到dom中,或者在dom中触发react组件的更新,可以设为react的驱动程序。
补充:
react-dom/client是浏览器渲染用的库,同理node端也有库
移动端也有
为什么有多个包?
为了功能解耦,渲染有渲染专用的包,引擎只负责引擎
1
2
3
4
5
6
7
8
9
面试题:2.React是框架嘛?
react的核心,其实是一个渲染库。
面试题:3.React严格模式?
1.不安全的生命周期方法:警告某些在未来版本会被弃用的生命周期
2.警告使用过时或遗留的api
3.意外的富足用
4.警告与旧版本react不兼容的部分