×
暂无评论
图文详情
  • ISBN:9787115509017
  • 装帧:一般胶版纸
  • 册数:暂无
  • 重量:暂无
  • 开本:16开
  • 页数:193
  • 出版时间:2019-04-01
  • 条形码:9787115509017 ; 978-7-115-50901-7

本书特色

本书通过丰富的示例和详细的讲解,介绍了React Native这款JavaScript框架。在React Native中利用现有的JavaScript和React知识,就可以开发和部署功能完备的、真正原生的移动应用,并同时支持iOS与Android平台。除了框架本身的概念讲解之外,本书还讨论了如何使用第三方库,以及如何编写自己的Java或Objective-C的React Native扩展。第2版结合当前开发实践,新增了有关平台特定组件、状态管理和Expo应用的内容。

内容简介

“对于想要使用JavaScript构建原生应用的前端工程师,本书是非常实用的指导手册,涵盖了构建和部署跨平台移动应用所需的各种知识。” ——Ryan Hurley,Twitter高级软件工程师


自2015年春天Facebook开源React Native以来,React Native就凭借其强大的可扩展性、良好的用户体验以及可拥有原生外观等优势得到开发者的关注和青睐。
本书是一本实践指南,从基础知识入手,逐步深入,带领读者部署可100%代码复用的、成熟的跨平台移动应用。除了框架本身的讲解,作者还探讨了如何使用第三方库,以及如何编写自己的Java或者Objective-C的React Native扩展。第2版新增了部分章节及附录,讨论了如何在跨平台组件中实现特定平台的代码,通过Redux库来管理状态,以及对React Native初学者更友好的Expo应用。

了解React Native如何开放原生UI组件接口
类比HTML元素,了解该框架如何使用原生组件
创建自己的React Native组件和应用,并为它们编写样式
使用宿主平台API,以及由React Native社区编写的模块
在跨平台组件中实现特定平台的代码
使用工具来调试代码,并解决JavaScript之外的问题
整合所学知识,开发一款高效记忆闪卡应用
通过Redux库来管理状态

目录

第1章 初识React Native 1 1.1 React Native的优点 2 1.2 风险和缺点 4 1.3 小结 4 第2章 React Native工作原理 5 2.1 React Native是如何工作的 5 2.2 渲染周期 7 2.3 在React Native中创建组件 7 2.3.1 编写视图 8 2.3.2 使用JSX 9 2.3.3 原生组件的样式 10 2.4 宿主平台API 11 2.5 小结 11 第3章 构建你的**个应用 12 3.1 搭建环境 12 3.2 使用Create React Native App进行开发配置 13 3.2.1 使用create-react-native-app创建你的**个应用 13 3.2.2 在iOS或者Android中预览应用 14 3.3 使用传统方式进行开发配置 15 3.3.1 使用react-native创建**个应用 15 3.3.2 在iOS平台运行React Native应用 16 3.3.3 在Android平台运行React Native应用 17 3.4 探索示例代码 17 3.5 开发天气应用 20 3.5.1 处理用户输入 21 3.5.2 展现数据 24 3.5.3 从Web获取数据 26 3.5.4 添加背景图片 30 3.5.5 整合 31 3.6 小结 33 第4章 移动应用组件 35 4.1 类比HTML元素与原生组件 35 4.2 处理触摸和手势 39 4.3 使用列表 49 4.4 导航 62 4.5 其他结构化组件 63 4.6 小结 64 第5章 样式 65 5.1 声明和操作样式 65 5.1.1 内联样式 66 5.1.2 对象样式 66 5.1.3 使用Stylesheet.create 67 5.1.4 样式拼接 67 5.2 组织和继承 69 5.2.1 导出样式对象 69 5.2.2 样式作为属性传递 70 5.2.3 复用和共享样式 70 5.3 定位和设计布局 71 5.3.1 使用flexbox布局 71 5.3.2 使用绝对定位 75 5.3.3 学以致用 75 5.4 小结 79 第6章 平台API 80 6.1 使用定位API 80 6.1.1 获取用户地理位置 81 6.1.2 处理权限问题 81 6.1.3 在模拟器上测试定位 82 6.1.4 监听用户位置 84 6.1.5 限制 84 6.1.6 改进天气应用 84 6.2 使用用户图片与摄像头 87 6.2.1 使用相机模块进行交互 87 6.2.2 通过getPhotoParams获取图片 88 6.2.3 从相机渲染一张图片 89 6.2.4 上传图片至服务器 90 6.3 AsyncStore持久化数据存储 91 6.4 SmarterWeather应用 92 6.5 小结 99 第7章 模块和原生代码 100 7.1 使用npm安装JavaScript类库 100 7.2 安装包含原生代码的第三方组件 102 7.3 Objective-C原生模块 103 7.3.1 编写iOS的Objective-C原生模块 103 7.3.2 探索react-native-video iOS版本 107 7.4 Java原生模块 110 7.4.1 编写Android的Java原生模块 110 7.4.2 探索react-native-video Java版本 113 7.5 跨平台原生模块 116 7.6 小结 116 第8章 平台特定代码 118 8.1 仅iOS/仅Android可用的组件 118 8.2 平台特定组件的实现 119 8.2.1 使用平台特定的文件扩展名 119 8.2.2 使用平台模块 122 8.3 何时使用平台特定组件 122 第9章 调试与开发者工具 123 9.1 JavaScript调试实践和解释 123 9.1.1 激活开发者选项 123 9.1.2 使用console.log调试 125 9.1.3 使用JavaScript调试器 126 9.1.4 使用React开发者工具 127 9.2 React Native调试工具 128 9.2.1 使用审查元素功能 128 9.2.2 宕机红屏 129 9.3 JavaScript之外的调试方法 132 9.3.1 常见的开发环境问题 132 9.3.2 常见的Xcode问题 133 9.3.3 常见的Android问题 134 9.3.4 React Native包管理器 135 9.3.5 部署至iOS设备的问题 135 9.3.6 模拟器行为 136 9.4 测试代码 137 9.4.1 使用Flow进行类型检查 137 9.4.2 使用Jest进行单元测试 138 9.4.3 使用Jest进行快照测试 139 9.5 当你陷入困境 142 9.6 小结 142 第10章 大型应用中的导航与结构 143 10.1 闪卡应用 143 10.2 项目结构 145 10.2.1 应用屏幕 146 10.2.2 可复用组件 152 10.2.3 样式 156 10.2.4 数据模型 157 10.3 使用React Navigation 159 10.3.1 创建StackNavigator 160 10.3.2 使用navigation.navigate在屏幕之间过渡 160 10.3.3 使用navigationOptions配置页眉 163 10.3.4 实现余下逻辑 164 10.4 本章小结 165 第11章 大型应用中的状态管理 166 11.1 使用Redux管理状态 166 11.2 action 167 11.3 reducer 169 11.4 连接Redux 172 11.5 使用AsyncStorage持久化数据 179 11.6 本章小结和作业 182 总结 183 附录A 现代JavaScript语法 184 附录B 部署应用 189 附录C 使用Expo应用 192 作者简介 193 关于封面 193
展开全部

作者简介

【作者简介】

邦尼•艾森曼(Bonnie Eisenman),Twitter公司软件工程师,曾就职于Codecademy、Google和Fog Creek Software公司,经常受邀在技术大会上做演讲。

【译者简介】

张俊达

前端开发工程师,关注前端领域的新技术,乐于分享。译作包括《React快速上手开发》《同构JavaScript应用开发》。【作者简介】

邦尼•艾森曼(Bonnie Eisenman),Twitter公司软件工程师,曾就职于Codecademy、Google和Fog Creek Software公司,经常受邀在技术大会上做演讲。

【译者简介】

张俊达

前端开发工程师,关注前端领域的新技术,乐于分享。译作包括《React快速上手开发》《同构JavaScript应用开发》。

黄为伟

毕业于东北大学,前端开发工程师,开源项目react-native-guide作者,专注于Web与移动应用开发,目前就职于腾讯微信。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航