微信扫一扫,移动浏览光盘
简介
《React Native全教程:移动端跨平台应用开发》由经验丰富的移动开发工程师精心编撰,《React Native全教程:移动端跨平台应用开发》从逻辑上可分为5个部分,循序渐进地向读者展示使用React Native开发跨平台移动应用的全流程,第1部分介绍React Native语言基础JavaScript;第2部分介绍大量使用于React Native开发中的ECMAScript 6的新特性;第3部分介绍React Native开发技巧,包括独立组件应用、布局技术、网络技术、导航栈技术等;第4部分通过3个实战项目手把手地教读者开发完整的React Native应用;第5部分介绍React Native的一些高级技巧,比如和原生交互、嵌入原生应用、React Native组件开发等。本书特别对React Native在开发iOS和Android 跨平台应用时给出范例效果对比演示,现场感十足。《React Native全教程:移动端跨平台应用开发》既适合想快速上手React Native的初学者、有Android和iOS开发基础想构建跨平台移动应用的开发人员使用,也可用作培训机构和大中专院校的教学参考书。
目录
目 录
第1章 从JavaScript开始 1
1.1 学习环境的配置 1
1.1.1使用浏览器进行JavaScript代码的调试 1
1.1.2使用Sublime Text工具来编写JavaScript代码 3
1.1.3安装Sublime Text插件管理器PackageControl 3
1.1.4使用PackageControl进行JavaScript代码智能提示插件的安装 5
1.1.5安装JavaScript代码格式化插件 7
1.1.6在Sublime Text中运行JavaScript代码 7
1.2 初识JavaScript 8
1.2.1JavaScript的语法特点 9
1.2.2JavaScript中的变量 10
1.3JavaScript中的数据类型 12
1.3.1原始类型 13
1.3.2引用类型 16
1.4JavaScript中的运算符 18
1.4.1算术运算符 18
1.4.2赋值运算符 21
1.4.3关系运算符 22
1.4.4逻辑运算符 24
1.4.5位运算符 26
1.4.6特殊运算符 30
1.4.7运算符的优先级与结合性 32
第2章 JavaScript流程控制与函数 34
2.1 条件分支结构 34
2.1.1if-else分支结构 34
2.1.2switch-case分支结构 35
2.2 循环结构 37
2.2.1while循环结构 37
2.2.2for循环结构 38
2.3 中断与跳转结构 39
2.3.1break语句 39
2.3.2continue语句 41
2.4 异常捕获结构 42
2.4.1使用throw语句抛出异常 43
2.4.2异常的捕获与处理 44
2.4.3异常的传递 46
2.5JavaScript中的函数 48
2.5.1使用函数语句定义函数 48
2.5.2使用函数表达式定义函数 50
2.5.3使用Function构造函数 51
第3章 JavaScript对象基础 52
3.1 初识JavaScript对象 52
3.1.1在JavaScript中创建对象 52
3.1.2设置对象的属性和行为 54
3.2JavaScript中常用的内置对象 55
3.2.1JavaScript中的Number对象 55
3.2.2JavaScript中的String对象 57
3.2.3JavaScript中的Boolean对象 59
3.2.4JavaScript中的Array对象 60
3.2.5JavaScript中的Date对象 64
3.2.6JavaScript中的Math对象 67
3.2.7JavaScript中的RegExp对象 69
3.2.8JavaScript中的Function对象 73
3.3 深入JavaScript中的Object对象 75
3.3.1为对象属性进行配置 76
3.3.2Object构造方法对象中的常用函数 77
3.3.3Object实例对象中的常用方法 82
3.4 面向对象编程技术 82
3.4.1JavaScript中模拟类的方式 83
3.4.2在JavaScript中实现继承机制 86
第4章 ECMAScript 6新特性 91
4.1ECMAScript 6的块级作用域 91
4.1.1let关键字 92
4.1.2const关键字 94
4.2 解构赋值 95
4.2.1数组的解构赋值 95
4.2.2对象的解构赋值 96
4.2.3字符串与函数参数的解构赋值 98
4.3 箭头函数 99
4.3.1箭头函数的基本用法 99
4.3.2箭头函数中this的固化 100
4.4Set与Map数据结构 102
4.4.1Set集合结构 102
4.4.2Map字典结构 104
4.5Proxy代理 106
4.5.1使用Proxy代理对对象的属性读写进行拦截 106
4.5.2Proxy代理处理器支持的拦截操作 108
4.6Promise承诺对象 110
4.6.1Promise对象执行异步任务 110
4.6.2Promise任务链 112
4.6.3Promise对象组合 113
4.7Generator生成器与yield语句 115
4.7.1Generator函数应用 115
4.7.2Generator任务参数的传递 117
4.8 使用class定义类 119
4.8.1使用class定义类 119
4.8.2class类的继承 120
4.9 模块引入 121
4.9.1export关键字 121
4.9.2import关键字 122
4.9.3默认导出与导入 122
第5章 React Native开发环境的搭建 124
5.1iOS开发环境的搭建 124
5.1.1申请AppleID账号 124
5.1.2安装Xcode开发工具 125
5.2 Android开发环境的搭建 126
5.2.1下载Android Studio开发工具 126
5.2.2安装相关SDK和模拟器 127
5.3React Native开发环境配置 130
5.3.1安装React Native构建环境 130
5.3.2运行你的*个React Native应用 131
第6章 React Native独立组件基础篇 134
6.1Text文本组件的应用 134
6.1.1文字风格设置 134
6.1.2Text组件属性的设置 138
6.1.3Text组件的嵌套 140
6.1.4React Native程序的调试 141
6.2Button按钮组件的应用 142
6.2.1Button组件的简单使用 142
6.2.2小应用:屏幕霓虹灯 144
6.3Image图像组件的应用 145
6.3.1渲染图像的方式 145
6.3.2Image组件的风格自定义 148
6.3.3Image组件的属性和方法解析 151
6.4Switch开关组件的应用 154
6.5Slider滑块组件的应用 156
6.6ActivityIndicator指示器组件的应用 159
6.7TextInput用户输入组件的应用 160
6.8StatusBar状态栏组件的应用 165
6.9Picker选择器组件的应用 167
6.10Modal模态视图组件的应用 169
6.11KeyboardAvoidingView组件的应用 171
6.12WebView网页组件的应用 174
6.12.1WebView常用属性解析 174
6.12.2WebView加载过程监听相关属性 177
6.12.3React Native与WebView交互 178
6.13View视图组件的应用 179
6.13.1View组件Style属性的解析 180
6.13.2View组件基础属性的解析 182
6.14Touchable相关交互组件的应用 183
6.14.1TouchableWithoutFeedback 184
6.14.2TouchableOpacity 185
6.14.3TouchableNativeFeedback 186
6.14.4TouchableHighlight 188
6.15ScrollView滚动视图组件的应用 189
6.15.1ScrollView的基础用法 189
6.15.2ScrollView常用属性解析 190
6.15.3手动设置ScrollView组件的滚动位置 192
6.16ListView列表组件的应用 193
6.16.1使用DataSource渲染ListView视图 193
6.16.2ListView属性方法解析 197
6.17高性能列表组件FlatList 199
6.17.1创建一个简单的FlatList列表视图 199
6.17.2FlatList中常用方法解析 202
6.18分区列表组件SectionList的应用 202
6.19RefreshControl刷新组件的应用 205
第7章 React Native独立组件高级篇 208
7.1 时间选择器DatePickerIOS组件的应用 208
7.2DrawerLayoutAndroid抽屉组件的应用 209
7.3 进度条组件的应用 211
7.3.1通过文件名分平台加载组件 212
7.3.2ProgressBarAndroid组件常用属性 213
7.3.3ProgressViewIOS组件常用属性 214
7.4SegmentedControlIOS组件的应用 214
7.5Android平台上的工具条组件 215
7.6Navigator导航控制器 218
7.6.1Navigatior牛刀小试 219
7.6.2Navigator属性配置 220
7.6.3Navigator实例方法解析 221
7.7iOS平台的导航控制器NavigatorIOS组件 222
7.7.1使用NavigatorIOS组件 222
7.7.2NavigatorIOS属性与方法解析 225
7.8 标签栏TabBarIOS组件 226
第8章 React Native技能进阶 230
8.1React Native布局技术 230
8.1.1布局中的主轴与次轴 231
8.1.2精准定义组件的尺寸 234
8.1.3相对定位与*定位 237
8.2React Native中的颜色定义 240
8.3 警告弹窗的应用 242
8.3.1Alert组件的应用 243
8.3.2iOS平台专用警告框AlertIOS 245
8.4ActionSheetIOS抽屉视图的应用 247
8.4.1普通功能列表抽屉 247
8.4.2分享视图抽屉 248
8.5 自定义组件的属性与使用样式表 250
8.5.1自定义组件的属性 250
8.5.2通过StyleSheet样式表定义组件的风格 251
8.6Android平台的时间选择器 252
8.7Android平台悬浮提示信息Toast的应用 254
8.8 监听与控制Android设备返回键的行为 255
8.9 监听程序运行状态 257
8.10跨平台的分享功能 258
8.11监听键盘事件 260
8.12React Native网络技术 262
8.12.1使用fetch方法进行网络请求 262
8.12.2使用XMLHttpRequest进行网络请求 264
8.13进行用户位置获取 266
8.14数据持久化技术 267
8.15剪贴板工具的应用 270
8.16获取设备网络状态 271
8.17React Native动画技术 273
8.17.1创建单值驱动的动画 273
8.17.2使用timing方法执行平滑过渡动画 275
8.17.3深入理解easing 276
8.17.4二维动画对象与衰减动画 278
8.17.5弹簧动画 280
8.17.6Interpolation插值动画 281
8.17.7聚合动画值 282
8.17.8组合动画 283
8.17.9循环动画 285
8.17.10布局动画 286
8.17.11自定义组件动画 287
8.18调用设备振动模块 288
8.19封装滑动手势 289
8.20获取屏幕尺寸信息 292
8.21特定平台代码 293
8.22定时器的简单应用 294
第9章 实战项目:汇率转换器 296
9.1 搭建汇率转换器项目主界面 297
9.2 显示屏面板的初步开发 299
9.3 货币类型切换功能开发 302
9.4 键盘界面设计 306
9.5 实现汇率转换器核心功能 310
第10章 实战项目:微信热门精选 315
10.1申请免费的API服务 315
10.2搭建项目网络模块 317
10.3搭建文章列表界面 319
10.4文章目录视图与首页导航栏完善 322
10.5文章详情页面的开发 326
10.6为文章列表页添加下拉刷新与上拉加载更多功能 329
第11章 实战项目:掌上新闻 332
11.1应用结构搭建 332
11.2完善标题栏组件 335
11.3进行网络模块的开发 338
11.4使用列表展示数据 339
11.5完善新闻目录列表 341
11.6标题栏与页面联动开发与优化加载逻辑 344
11.7使用导航进行页面跳转 348
11.8完善下拉刷新与上拉加载更多功能 351
11.9完善导航栏 353
11.10添加收藏夹功能 356
11.11优化方向与应用图标设置 361
第12章 React Native高级技巧 363
12.1直接操作组件的属性 363
12.2对React Native版本进行升级 365
12.3React Native的更多调试技巧 366
12.4React Native插件开发 367
12.4.1构建iOS工程的原生模块 367
12.4.2构建Android工程的原生模块 371
12.4.3深入了解原生模块的函数参数 373
12.5封装原生UI组件 375
12.5.1封装iOS平台的原生UI组件 375
12.5.2开发Android跑马灯组件 382
12.6在原生工程中嵌入React Native模块 387
12.6.1将iOS工程的某个模块进行React Native化 387
12.6.2将Android工程的某个模块进行React Native化 391
12.7在真机上运行React Native工程 397
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问