搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
React与React Native 跨平台开发:使用JavaScript与TypeScript
0.00     定价 ¥ 129.00
图书来源: 浙江图书馆(由JD配书)
此书还可采购14本,持证读者免费借回家
  • 配送范围:
    浙江省内
  • ISBN:
    9787302684503
  • 作      者:
    [美]米哈伊尔·萨赫尼乌克,等
  • 译      者:
    刘璋
  • 出 版 社 :
    清华大学出版社
  • 出版日期:
    2025-04-01
收藏
编辑推荐

《React与React Native 跨平台开发:使用JavaScript与TypeScript构建网页端、桌面端和移动端应用》涵盖了现代跨平台应用程序开发中的关键功能和概念,而且包含了从 React 的基础知识到 Hooks、服务器渲染和单元测试等流行特性,本书将以循序渐进的方式帮助读者成为一名专业的 React 开发者。

展开
作者简介

米哈伊尔·萨赫尼乌克是一名软件工程师,精通 JavaScript、React 和 React Native。他拥有超过 5 年的网络和移动应用开发经验。他曾供职于初创公司、金融科技公司和拥有 2000 多万用户的产品公司。目前,Mikhail 在 Miro 担任前端工程师。此外,他还拥有并维护着几个开源项目。他还通过书籍和文章分享自己的经验和知识。

展开
内容介绍

《React与React Native 跨平台开发:使用JavaScript与TypeScript构建网页端、桌面端和移动端应用》详细阐述了与 React和 React Native相关的基本解决方案,主要包括为什么选择 React、使用 JSX渲染、理解 React组件和 Hooks、React方式中的事件处理、打造可复用组件、 TypeScript类型检查和验证、使用路由处理导航、使用延迟组件和 Suspense进行代码分割、用户界面框架组件、高性能状态更新、从服务器获取数据、 React中的状态管理、服务器端渲染、 React中的单元测试、为什么选择 React Native、React Native内部机制、快速启动 React Native项目、使用 Flexbox构建响应式布局、屏幕间的导航、渲染项目列表、地理位置与地图、收集用户输入、响应用户手势、显示进度、展示模态屏幕、使用动画、控制图像显示、离线使用等内容。此外,本书还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。

展开
目录

第1部分 React

第 1 章 为什么选择 React 3

1.1 React 是什么 3

1.1.1 React 仅仅是视图层 3

1.1.2 化繁为简 4

1.1.3 声明式 UI 结构 5

1.1.4 数据随时间变化 7

1.1.5 性能至关重要 7

1.1.6 正确的抽象级别 9

1.2 React 的新功能 10

1.3 搭建一个新的 React 项目 11

1.4 使用 Web 打包工具 12

1.4.1 使用框架 13

1.4.2 在线代码编辑器 13

1.5 本章小结 14

第 2 章 使用 JSX 渲染 15

2.1 技术要求 15

2.2 第一个 JSX 内容 15

2.3 渲染 HTML 17

2.3.1 内置 HTML 标签 17

2.3.2 HTML 标签约定 18

2.3.3 描述 UI 结构 19

2.4 创建自己的 JSX 元素 20

2.4.1 封装 HTML 20

2.4.2 嵌套元素 21

2.5 使用 JavaScript 表达式 23

2.5.1 动态属性值和文本 23

2.5.2 处理事件 24

2.5.3 将集合映射到元素 26

2.6 构建 JSX 片段 28

2.6.1 使用包装元素 29

2.6.2 使用片段 29

2.7 本章小结 30

第 3 章 理解 React 组件和 Hooks 31

3.1 技术要求 31

3.2 React 组件简介 31

3.3 组件属性是什么 32

3.3.1 传递属性值 33

3.3.2 默认属性值 35

3.4 组件状态是什么 35

3.5 React 钩子 36

3.5.1 使用钩子维护状态 36

3.5.2 初始状态值 37

3.6 执行初始化和清理操作 40

3.6.1 获取组件数据 40

3.6.2 取消操作和重置状态 42

3.6.3 优化副作用行为 44

3.7 使用上下文钩子共享数据 45

3.8 使用钩子进行记忆化处理 46

3.8.1 useMemo() 钩子 46

3.8.2 useCallback() 钩子 47

3.8.3 useRef() 钩子 48

3.9 本章小结 49

第 4 章 React 方式中的事件处理 51

4.1 技术要求 51

4.2 声明事件处理程序 51

4.2.1 声明处理函数 52

4.2.2 多个事件处理程序 52

4.3 声明内联事件处理程序 53

4.4 将处理程序绑定到元素 53

4.5 使用合成事件对象 54

4.6 理解事件池化 56

4.7 本章小结 57

第 5 章 打造可复用组件 59

5.1 技术要求 59

5.2 可重用的 HTML 元素 59

5.3 单体组件的难点 60

5.3.1 JSX 标记 60

5.3.2 初始状态 61

5.3.3 事件处理程序实现 62

5.4 重构组件结构 64

5.4.1 从 JSX 开始 65

5.4.2 实现文章列表组件 66

5.4.3 实现文章项目组件 68

5.4.4 实现 AddArticle 组件 69

5.5 渲染属性 70

5.6 渲染组件树 72

5.7 本章小结 73

第 6 章 TypeScript 类型检查和验证 75

6.1 技术要求 75

6.2 了解预期行为 75

6.2.1 属性验证的重要性 75

6.2.2 属性验证的缺失可能导致的潜在问题 76

6.2.3 属性验证的选项 76

6.3 TypeScript 简介 78

6.3.1 为什么要使用 TypeScript 79

6.3.2 在项目中设置 TypeScript 80

6.3.3 TypeScript 中的基本类型 82

6.3.4 接口和类型别名 85

6.4 在 React 中使用 TypeScript 86

6.4.1 在 React 组件中对属性进行类型检查 86

6.4.2 类型状态 88

6.4.3 事件处理器的类型定义 89

6.4.4 上下文类型检查 89

6.4.5 引用类型检查 90

6.5 本章小结 91

第 7 章 使用路由处理导航 93

7.1 技术要求 93

7.2 声明路由 93

7.2.1 Hello Route 94

7.2.2 解耦路由声明 95

7.3 处理路由参数 98

7.3.1 路由中的资源 ID 98

7.3.2 查询参数 101

7.4 使用链接组件 103

7.4.1 基本链接 103

7.4.2 URL 和查询参数 104

7.5 本章小结 106

第 8 章 使用延迟组件和 Suspense 进行代码分割 107

8.1 技术要求 107

8.2 使用 lazy() API 107

8.2.1 动态导入和捆绑包 108

8.2.2 组件延迟加载 109

8.3 使用 Suspense 组件 109

8.3.1 顶层 Suspense 组件 109

8.3.2 使用旋转图标回退 111

8.4 避免使用延迟组件 112

8.5 探索延迟页面和路由 114

8.6 本章小结 115

第 9 章 用户界面框架组件 117

9.1 技术要求 117

9.2 布局与组织 117

9.2.1 使用容器 118

9.2.2 构建响应式网格布局 119

9.3 使用导航组件 122

9.3.1 Drawer 导航 122

9.3.2 使用标签导航 125

9.4 收集用户输入 127

9.4.1 复选框和单选按钮 127

9.4.2 文本输入和选择输入 128

9.4.3 使用按钮 130

9.5 使用样式和主题 132

9.5.1 创建样式 132

9.5.2 自定义主题 133

9.6 本章小结 134

第 10 章 高性能状态更新 135

10.1 技术要求 135

10.2 批量更新状态 135

10.3 优先处理状态更新 139

10.4 处理异步状态更新 142

10.5 本章小结 145

第 11 章 从服务器获取数据 147

11.1 技术要求 147

11.2 处理远程数据 147

11.3 使用 Fetch API 151

11.4 使用 Axios 154

11.5 使用 TanStack Query 156

11.6 使用 GraphQL 157

11.7 本章小结 160

第 12 章 React 中的状态管理 161

12.1 全局状态是什么 161

12.2 React Context API 和 useReducer 164

12.3 Redux 167

12.4 MobX 169

12.5 本章小结 172

第 13 章 服务器端渲染 173

13.1 技术要求 173

13.2 在服务器上工作 173

13.2.1 服务器端渲染 174

13.2.2 静态站点和增量式静态生成 176

13.3 使用 Next.js 178

13.4 React 服务器组件 185

13.5 本章小结 188

第 14 章 React 中的单元测试 189

14.1 技术要求 189

14.2 总体测试 189

14.3 单元测试 191

14.3.1 设置测试环境 192

14.3.2 Vitest 特性 193

14.3.3 模拟 196

14.4 测试 ReactJS 201

14.5 本章小结 206

第2部分 React Native

第 15 章 为什么选择 React Native 209

15.1 技术要求 209

15.2 什么是 React Native 209

15.3 React 和 JSX 211

15.4 移动浏览器体验 211

15.5 Android 和 iOS:不同却又相同 212

15.6 移动 Web 应用的案例 212

15.7 本章小结 213

第 16 章 React Native 内部机制 215

16.1 探索 React Native 架构 215

16.2 React Native 当前架构 217

16.2.1 作为 React Native 一部分的 JS 218

16.2.2 React Native 未来架构 220

16.3 解释 JS 和原生模块 222

16.3.1 React Navigation 222

16.3.2 UI 组件库 222

16.3.3 启动屏幕 223

16.3.4 图标 223

16.3.5 错误处理 223

16.3.6 推送通知 224

16.3.7 空中更新 224

16.3.8 JS 库 225

16.4 探索 React Native 组件和 API 225

16.5 本章小结 226

第 17 章 快速启动 React Native 项目 227

17.1 技术要求 227

17.2 探索 React Native 命令行工具 227

17.3 安装和使用 Expo 命令行工具 228

17.4 在手机上查看应用 229

17.5 在 Expo Snack 上查看应用 232

17.6 本章小结 234

第 18 章 使用 Flexbox 构建响应式布局 235

18.1 技术要求 235

18.2 引入 Flexbox 235

18.3 引入 React Native 样式 236

18.4 使用 Styled Components 库 239

18.5 构建 Flexbox 布局 240

18.5.1 简单的 3 列布局 240

18.5.2 改进后的 3 列布局 243

18.5.3 灵活的行 245

18.5.4 灵活的网格 247

18.5.5 灵活的行和列 249

18.6 本章小结 251

第 19 章 屏幕间的导航 253

19.1 技术要求 253

19.2 导航的基础知识 253

19.3 路由参数 257

19.4 导航标题栏 260

19.5 标签和抽屉导航 263

19.6 基于文件的导航 266

19.7 本章小结 268

第 20 章 渲染项目列表 269

20.1 技术要求 269

20.2 渲染数据集合 269

20.3 对列表进行排序和过滤 272

20.4 获取列表数据 276

20.5 延迟加载列表 278

20.6 实现下拉刷新功能 281

20.7 本章小结 282

第 21 章 地理位置与地图 283

21.1 技术要求 283

21.2 使用 Geolocation API 283

21.3 渲染地图 286

21.4 标注兴趣点 287

21.4.1 绘制点 287

21.4.2 绘制覆盖层 289

21.5 本章小结 290

第 22 章 收集用户输入 293

22.1 技术要求 293

22.2 收集文本输入 293

22.3 从选项列表中选择 296

22.4 在开启和关闭之间切换 301

22.5 收集日期/时间输入 303

22.6 本章小结 306

第 23 章 响应用户手势 307

23.1 技术要求 307

23.2 用手指滚动 307

23.3 提供触摸反馈 309

23.4 使用可滑动和可取消的组件 313

23.5 本章小结 317

第 24 章 显示进度 319

24.1 技术要求 319

24.2 理解进度和可用性 319

24.3 指示进度 320

24.4 探索导航指示器 321

24.5 测量进度 323

24.6 步骤进度 325

24.7 本章小结 327

第 25 章 展示模态屏幕 329

25.1 技术要求 329

25.2 术语定义 329

25.3 获取用户确认 330

25.4 错误确认 333

25.5 被动通知 337

25.6 活动模态框 338

25.7 本章小结 340

第 26 章 使用动画 343

26.1 技术要求 343

26.2 使用 React Native Reanimated 343

26.3 Animated API 343

26.3.1 React Native Reanimated 344

26.3.2 安装 React Native Reanimated 库 345

26.4 动画布局组件 345

26.5 动画组件样式 349

26.6 本章小结 351

第 27 章 控制图像显示 353

27.1 技术要求 353

27.2 加载图像 353

27.3 调整图像大小 355

27.4 延迟加载图像 357

27.5 渲染图标 360

27.6 本章小结 362

第 28 章 离线使用 363

28.1 技术要求 363

28.2 检测网络状态 363

28.3 存储应用程序数据 365

28.4 同步应用程序数据 369

28.5 本章小结 373


展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证