商品簡介
本書由架構師撰寫,包含ReactNative框架底層原理,以及與iOS、Android混合開發案例,精選了大量實例代碼,方便讀者快速學習。主要內容分為兩大部分,第1部分“入門”包括第1~9章,介紹ReactNative框架的基本原理與使用方法;第2部分“進階”包括第10~15章,介紹ReactNative框架的高階開發與App部署相關知識。附錄部分剖析了ReactNative的源碼,可幫助讀者研究ReactNative底層本質,還分享了一些ReactNative框架學習的相關資源。本書適合移動App開發人員,深入學習ReactNative框架可以掌握開發一套ReactNative源碼同時部署到iOS平臺與Android平臺。本書的配套源代碼可以下載,地址是https://github.com/ParryQiu/ReactNative-Book-Demo。
目次
目錄 Contents
前言
第Ⅰ部分 入門
第1章 React與React Native簡介2
1.1 React簡介2
1.2 React Native 簡介9
1.3 React Native 前置知識點11
第2章 Node.js 簡介與開發環境配置13
2.1 Node.js與npm簡介13
2.2 React Native開發環境配置15
2.2.1 安裝Node.js16
2.2.2 安裝React Native18
2.2.3 代碼編輯器以及推薦插件22
第3章 React Native工作原理與生命週期25
3.1 React Native框架及工作原理25
3.1.1 React Native與原生平台通信27
3.1.2 組件間通信27
3.2 React Native中的生命週期31
3.3 本章小結35
第4章 React Native頁面布局36
4.1 CSS 3簡介36
4.2 Flex彈性盒模型37
4.3 Flex屬性詳解與實例39
4.3.1 justify-content屬性40
4.3.2 align-items屬性42
4.3.3 align-self 屬性45
4.3.4 flex-direction 屬性48
4.3.5 flex-basis屬性51
4.3.6 flex-wrap屬性52
4.3.7 align-content 屬性54
4.3.8 flex-grow 屬性58
4.3.9 flex-shrink 屬性60
4.3.10 order屬性63
4.3.11 flex-flow屬性64
4.3.12 flex屬性64
4.4 React Native中的Flex屬性65
4.5 本章小結65
第5章 React Native開發調試技巧與工具66
5.1 配置iOS開發環境66
5.2 配置 Android 開發環境70
5.3 常用調試屬性的說明73
5.4 Chrome 中遠程調試代碼77
5.5 React Developer Tools 工具安裝與應用80
5.6 本章小結82
第6章 React Native 組件詳解83
6.1 React Native組件簡介83
6.2 視圖組件86
6.2.1 View組件介紹86
6.2.2 View組件實例87
6.3 底部導航 TabBar 組件92
6.3.1 TabBar 組件介紹92
6.3.2 iOS平臺下TabBarIOS組件實例94
6.3.3 Android 平臺下TabBar組件實例99
6.4 iOS 與 Android 的頁面跳轉102
6.4.1 NavigatorIOS 組件介紹102
6.4.2 NavigatorIOS組件實例104
6.4.3 react-native-navigation組件介紹108
6.4.4 react-native-navigation組件實例110
6.5 Image組件111
6.5.1 Image組件介紹111
6.5.2 Image組件實例112
6.6 Text組件114
6.6.1 Text組件介紹114
6.6.2 Text組件基本使用116
6.6.3 Text組件嵌套117
6.6.4 Text組件樣式統一119
6.7 TextInput 組件122
6.7.1 TextInput 組件介紹122
6.7.2 TextInput 組件實例124
6.8 觸摸處理類組件130
6.8.1 TouchableHighlight 組件介紹130
6.8.2 TouchableHighlight 組件實例131
6.8.3 TouchableNativeFeedback 組件介紹132
6.8.4 TouchableNativeFeedback 組件實例133
6.8.5 TouchableOpacity組件介紹133
6.8.6 TouchableOpacity 組件實例134
6.8.7 TouchableWithoutFeedback組件介紹134
6.9 Web View組件135
6.9.1 WebView 組件介紹135
6.9.2 WebView 組件實例137
6.10 ScrollView組件139
6.10.1 ScrollView 組件介紹139
6.10.2 ScrollView組件實例140
6.11 本章小結142
第7章 React Native API詳解143
7.1 React Native API簡介143
7.2 提示框145
7.2.1 Alert 介紹145
7.2.2 Alert實例145
7.3 App運行狀態150
7.3.1 AppState 介紹150
7.3.2 AppState 實例150
7.4 異步存儲152
7.4.1 AsyncStorage 介紹152
7.4.2 AsyncStorage 實例154
7.4.3 登錄狀態處理159
7.5 相機與相冊API161
7.5.1 CameraRoll介紹161
7.5.2 相冊/相機組件實例161
7.6 地理位置信息168
7.6.1 Geolocation介紹168
7.6.2 Geolocation實例169
7.7 設備網絡信息175
7.7.1 NetInfo介紹175
7.7.2 NetInfo實例175
7.8 本章小結178
第8章 React Native網絡請求詳解179
8.1 RESTful API 簡介179
8.2 React Native 中的網絡請求180
8.3 ListView 組件184
8.4 React Native 網絡請求與列表綁定方案186
8.5 本章小結192
第9章 常用React Native開源組件詳解193
9.1 React Native 熱門資源列表194
9.2 React Native 接入微博、微信、QQ 登錄196
9.3 更加美觀的組件庫200
9.4 React Native圖表202
9.5 react-native-gifted-listview205
9.6 react-native-vector-icons207
9.7 本章小結210
第Ⅱ部分 進階
第10章 React Native運行原理與部署調試214
10.1 React Native運行原理214
10.2 iOS平臺部署與調試220
10.3 Android平臺部署與調試225
10.4 Android模擬器簡介230
10.5 本章小結233
第11章 iOS平臺與React Native混合開發234
11.1 iOS平臺混合開發簡介234
11.2 iOS平臺混合開發原理詳解235
11.2.1 iOS原生代碼實現235
11.2.2 iOS項目編譯設置237
11.2.3 React Native中調用混合開發代碼239
11.2.4 iOS平臺混合開發特性詳解241
11.3 iOS平臺混合開發實例249
11.3.1 iOS原生代碼實現249
11.3.2 React Native調用混合開發代碼250
11.4 本章小結252
第12章 Android平臺與React Native混合開發253
12.1 Android平臺混合開發簡介253
12.2 Android平臺混合開發原理詳解254
12.2.1 Android原生代碼實現254
12.2.2 Android原生模塊注