-
内容大纲
本书详细阐述了与React和React Native相关的基本解决方案,主要包括为什么选择React、使用JSX渲染、理解React组件和Hooks、React方式中的事件处理、打造可复用组件、TypeScript类型检查和验证、使用路由处理导航、使用延迟组件和Suspense进行代码分割、用户界面框架组件、高性能状态更新、从服务器获取数据、React中的状态管理、服务器端渲染、React中的单元测试、为什么选择React Native、React Native内部机制、快速启动React Native项目、使用Flexbox构建响应式布局、屏幕间的导航、渲染项目列表、地理位置与地图、收集用户输入、响应用户手势、显示进度、展示模态屏幕、使用动画、控制图像显示、离线使用等内容。此外,本书还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。 -
作者介绍
-
目录
第1部分 React
第1章 为什么选择React
1.1 React是什么
1.1.1 React仅仅是视图层
1.1.2 化繁为简
1.1.3 声明式UI结构
1.1.4 数据随时间变化
1.1.5 性能至关重要
1.1.6 正确的抽象级别
1.2 React的新功能
1.3 搭建一个新的React项目
1.4 使用Web打包工具
1.4.1 使用框架
1.4.2 在线代码编辑器
1.5 本章小结
第2章 使用JSX渲染
2.1 技术要求
2.2 第一个JSX内容
2.3 渲染HTML
2.3.1 内置HTML标签
2.3.2 HTML标签约定
2.3.3 描述UI结构
2.4 创建自己的JSX元素
2.4.1 封装HTML
2.4.2 嵌套元素
2.5 使用JavaScript表达式
2.5.1 动态属性值和文本
2.5.2 处理事件
2.5.3 将集合映射到元素
2.6 构建JSX片段
2.6.1 使用包装元素
2.6.2 使用片段
2.7 本章小结
第3章 理解React组件和Hooks
3.1 技术要求
3.2 React组件简介
3.3 组件属性是什么
3.3.1 传递属性值
3.3.2 默认属性值
3.4 组件状态是什么
3.5 React钩子
3.5.1 使用钩子维护状态
3.5.2 初始状态值
3.6 执行初始化和清理操作
3.6.1 获取组件数据
3.6.2 取消操作和重置状态
3.6.3 优化副作用行为
3.7 使用上下文钩子共享数据
3.8 使用钩子进行记忆化处理
3.8.1 useMemo()钩子
3.8.2 useCallback()钩子
3.8.3 useRef()钩子
3.9 本章小结
第4章 React方式中的事件处理
4.1 技术要求
4.2 声明事件处理程序
4.2.1 声明处理函数
4.2.2 多个事件处理程序
4.3 声明内联事件处理程序
4.4 将处理程序绑定到元素
4.5 使用合成事件对象
4.6 理解事件池化
4.7 本章小结
第5章 打造可复用组件
5.1 技术要求
5.2 可重用的HTML元素
5.3 单体组件的难点
5.3.1 JSX标记
5.3.2 初始状态
5.3.3 事件处理程序实现
5.4 重构组件结构
5.4.1 从JSX开始
5.4.2 实现文章列表组件
5.4.3 实现文章项目组件
5.4.4 实现AddArticle组件
5.5 渲染属性
5.6 渲染组件树
5.7 本章小结
第6章 TypeScript类型检查和验证
6.1 技术要求
6.2 了解预期行为
6.2.1 属性验证的重要性
6.2.2 属性验证的缺失可能导致的潜在问题
6.2.3 属性验证的选项
6.3 TypeScript简介
6.3.1 为什么要使用TypeScript
6.3.2 在项目中设置TypeScript
6.3.3 TypeScript中的基本类型
6.3.4 接口和类型别名
6.4 在 React中使用TypeScript
6.4.1 在React组件中对属性进行类型检查
6.4.2 类型状态
6.4.3 事件处理器的类型定义
6.4.4 上下文类型检查
6.4.5 引用类型检查
6.5 本章小结
第7章 使用路由处理导航
7.1 技术要求
7.2 声明路由
7.2.1 Hello Route
7.2.2 解耦路由声明
7.3 处理路由参数
7.3.1 路由中的资源ID
7.3.2 查询参数
7.4 使用链接组件
7.4.1 基本链接
7.4.2 URL和查询参数
7.5 本章小结
第8章 使用延迟组件和Suspense进行代码分割
8.1 技术要求
8.2 使用lazy() API
8.2.1 动态导入和捆绑包
8.2.2 组件延迟加载
8.3 使用Suspense组件
8.3.1 顶层Suspense组件
8.3.2 使用旋转图标回退
8.4 避免使用延迟组件
8.5 探索延迟页面和路由
8.6 本章小结
第9章 用户界面框架组件
9.1 技术要求
9.2 布局与组织
9.2.1 使用容器
9.2.2 构建响应式网格布局
9.3 使用导航组件
9.3.1 Drawer导航
9.3.2 使用标签导航
9.4 收集用户输入
9.4.1 复选框和单选按钮
9.4.2 文本输入和选择输入
9.4.3 使用按钮
9.5 使用样式和主题
9.5.1 创建样式
9.5.2 自定义主题
9.6 本章小结
第10章 高性能状态更新
10.1 技术要求
10.2 批量更新状态
10.3 优先处理状态更新
10.4 处理异步状态更新
10.5 本章小结
第11章 从服务器获取数据
11.1 技术要求
11.2 处理远程数据
11.3 使用Fetch API
11.4 使用Axios
11.5 使用TanStack Query
11.6 使用GraphQL
11.7 本章小结
第12章 React中的状态管理
12.1 全局状态是什么
12.2 ReactContext API和useReducer
12.3 Redux
12.4 MobX
12.5 本章小结
第13章 服务器端渲染
13.1 技术要求
13.2 在服务器上工作
13.2.1 服务器端渲染
13.2.2 静态站点和增量式静态生成
13.3 使用Next.js
13.4 React服务器组件
13.5 本章小结
第14章 React中的单元测试
14.1 技术要求
14.2 总体测试
14.3 单元测试
14.3.1 设置测试环境
14.3.2 Vitest特性
14.3.3 模拟
14.4 测试ReactJS
14.5 本章小结
第2部分 ReactNative
第15章 为什么选择ReactNative
15.1 技术要求
15.2 什么是ReactNative
15.3 React和JSX
15.4 移动浏览器体验
15.5 Android和iOS:不同却又相同
15.6 移动Web应用的案例
15.7 本章小结
第16章 ReactNative内部机制
16.1 探索ReactNative架构
16.2 ReactNative当前架构
16.2.1 作为ReactNative一部分的JS
16.2.2 ReactNative未来架构
16.3 解释JS和原生模块
16.3.1 ReactNavigation
16.3.2 UI组件库
16.3.3 启动屏幕
16.3.4 图标
16.3.5 错误处理
16.3.6 推送通知
16.3.7 空中更新
16.3.8 JS库
16.4 探索ReactNative组件和API
16.5 本章小结
第17章 快速启动ReactNative项目
17.1 技术要求
17.2 探索ReactNative命令行工具
17.3 安装和使用Expo命令行工具
17.4 在手机上查看应用
17.5 在Expo Snack上查看应用
17.6 本章小结
第18章 使用Flexbox构建响应式布局
18.1 技术要求
18.2 引入Flexbox
18.3 引入ReactNative样式
18.4 使用Styled Components库
18.5 构建Flexbox布局
18.5.1 简单的3列布局
18.5.2 改进后的3列布局
18.5.3 灵活的行
18.5.4 灵活的网格
18.5.5 灵活的行和列
18.6 本章小结
第19章 屏幕间的导航
19.1 技术要求
19.2 导航的基础知识
19.3 路由参数
19.4 导航标题栏
19.5 标签和抽屉导航
19.6 基于文件的导航
19.7 本章小结
第20章 渲染项目列表
20.1 技术要求
20.2 渲染数据集合
20.3 对列表进行排序和过滤
20.4 获取列表数据
20.5 延迟加载列表
20.6 实现下拉刷新功能
20.7 本章小结
第21章 地理位置与地图
21.1 技术要求
21.2 使用Geolocation API
21.3 渲染地图
21.4 标注兴趣点
21.4.1 绘制点
21.4.2 绘制覆盖层
21.5 本章小结
第22章 收集用户输入
22.1 技术要求
22.2 收集文本输入
22.3 从选项列表中选择
22.4 在开启和关闭之间切换
22.5 收集日期/时间输入
22.6 本章小结
第23章 响应用户手势
23.1 技术要求
23.2 用手指滚动
23.3 提供触摸反馈
23.4 使用可滑动和可取消的组件
23.5 本章小结
第24章 显示进度
24.1 技术要求
24.2 理解进度和可用性
24.3 指示进度
24.4 探索导航指示器
24.5 测量进度
24.6 步骤进度
24.7 本章小结
第25章 展示模态屏幕
25.1 技术要求
25.2 术语定义
25.3 获取用户确认
25.4 错误确认
25.5 被动通知
25.6 活动模态框
25.7 本章小结
第26章 使用动画
26.1 技术要求
26.2 使用ReactNative Reanimated
26.3 Animated API
26.3.1 ReactNative Reanimated
26.3.2 安装ReactNative Reanimated库
26.4 动画布局组件
26.5 动画组件样式
26.6 本章小结
第27章 控制图像显示
27.1 技术要求
27.2 加载图像
27.3 调整图像大小
27.4 延迟加载图像
27.5 渲染图标
27.6 本章小结
第28章 离线使用
28.1 技术要求
28.2 检测网络状态
28.3 存储应用程序数据
28.4 同步应用程序数据
28.5 本章小结
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-

孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-

时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-

本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...
[
