YL8439 9787111571797 9787115411914
本書以實戰開發為原則,以ReactNative應用開發為主綫,iOS和Android雙平颱開發為副綫,通過典型的電商類App實例,詳細介紹瞭ReactNative應用開發所涉及的所有知識。本書共12章,分為4篇。涵蓋的主要內容有:搭建開發環境、Nuclide、各種命令行工具(Git、Node.js)、布局與調試、組件、API、第三方組件、基於Node.js的服務器、FetchAPI、AsyncStorage/SQLit/Realm數據庫存儲、原生平颱接口開發、Redux開發框架、應用打包發布、熱更新與CodePush等。本書適閤iOS、Android原生平颱應用開發者,以及有興趣加入移動平颱開發的開發者閱讀。當然也適閤大中專院校及社會培訓學校作為移動開發的教材使用。
前言
第1篇 React Native入門和基礎
第1章 為什麼要學習React Native2
1.1 看透React Native2
1.1.1 React Native與React.js2
1.1.2 React Native的跨平颱3
1.1.3 解剖React Native應用的結構4
1.2 React Native的特點5
1.2.1 其一:Learn Once, Write Anywhere5
1.2.2 其二:簡單易學的開發語言6
1.2.3 其三:接近原生應用的性能和體驗7
1.2.4 其四:完善的生態係統7
1.3 搭建React Native開發環境9
1.3.1 安裝原生開發工具——Android9
1.3.2 安裝原生開發工具——iOS11
1.3.3 安裝Node.js12
1.3.4 安裝React Native13
1.3.5 安裝其他輔助工具14
1.4 1個React Native應用16
1.4.1 初始化項目16
1.4.2 運行項目17
1.4.3 調試項目18
1.5 小試牛刀——更改React Native項目源碼18
1.6 小結20
第2章 全局解析React Native開發的基礎技術21
2.1 開發具備的基礎知識說明21
2.2 Git版本控製工具22
2.2.1 安裝Git22
2.2.2 Git常用命令22
2.3 React Native的JSX解決方案24
2.4 React Native的Flexbox布局25
2.4.1 flexDirection設置組件的排列26
2.4.2 flexWrap設置是否換行28
2.4.3 justifyContent設置橫嚮排列位置30
2.4.4 alignItems設置縱嚮排列位置31
2.4.5 alignSelf設置特定組件的排列33
2.4.6 flex設置組件所占空間34
2.5 如何調試React Native項目35
2.6 實戰——設計一個電商App37
2.6.1 電商App的模塊劃分37
2.6.2 設計首頁布局41
2.6.3 實現搜索欄44
2.6.4 設計輪播廣告46
2.6.5 展示商品列錶51
2.6.6 實現交互功能和狀態欄52
2.7 小結56
第2篇 React Native應用開發實戰
第3章 React Native的組件(1)58
3.1 創建新的電商App58
3.1.1 移植舊電商項目58
3.1.2 重構現有的代碼60
3.2 完善搜索框功能——TextInput組件64
3.2.1 搜索提示框64
3.2.2 調試搜索結果66
3.2.3 優化搜索框樣式67
3.3 完善輪播廣告——Image組件68
3.3.1 使用網絡圖片68
3.3.2 使用本地圖片69
3.3.3 添加指示器組件71
3.4 完善商品列錶——ListView組件73
3.4.1 對圖片資源進行重構74
3.4.2 重新定義商品模型75
3.4.3 商品布局的優化76
3.5 拖曳刷新列錶——RefreshControl組件80
3.6 添加頁麵跳轉功能——Navigator組件83
3.7 二級頁麵的跳轉——TouchableOpacity組件86
3.8 實現頁麵間的數據傳遞89
3.9 小結90
第4章 React Native的組件(2)91
4.1 隻支持特定平颱的組件91
4.1.1 實現多頁麵分頁TabBarIOS/ViewPagerAndroid91
4.1.2 加載指示器——ActivityIndicator96
4.1.3 地圖——MapView97
4.1.4 渲染——Picker98
4.1.5 選擇範圍——Slider99
4.1.6 開關組件——Switch100
4.1.7 打開網頁——WebView101
4.2 第三方組件102
4.2.1 react-native-swiper的使用103
4.2.2 NativeBase的使用104
4.2.3 NativeBase如何解決跨平颱問題111
4.3 小結113
第5章 原生平颱的適配和調試114
5.1 iOS平颱的適配114
5.1.1 Images.xcassets適配115
5.1.2 自動布局Auto Layout115
5.1.3 Size Class適配116
5.2 iOS開發的調試技巧117
5.3 Android平颱的適配118
5.3.1 適配原理118
5.3.2 常用的適配屬性119
5.4 Android平颱的調試技巧122
5.5 小結124
第6章 React Native的服務器端處理125
6.1 學習Node.js125
6.1.1 什麼是Node.js125
6.1.2 為什麼選擇Node.js126
6.1.3 安裝和使用nvm128
6.1.4 Node.js的開發流程129
6.2 服務端接口的設計:RESTful132
6.3 實現電商App的服務器端接口133
6.3.1 Express框架133
6.3.2 查詢商品接口138
6.3.3 新建商品接口142
6.3.4 更新商品接口143
6.3.5 刪除商品接口144
6.4 網絡前後端交互的原理fetch145
6.5 App從服務器獲取數據146
6.5.1 獲取商品信息148
6.5.2 更新商品信息151
6.5.3 新建商品157
6.5.4 刪除商品158
6.6 App數據的本地化存儲160
6.6.1 AsyncStorage異步鍵值存儲160
6.6.2 SQLite數據庫164
6.6.3 Realm數據庫166
6.7 小結168
第7章 常用React Native API169
7.1 屏幕設置相關API169
7.1.1 獲取屏幕寬高——Dimensions API170
7.1.2 獲取屏幕分辨率——PixelRatio API173
7.2 動畫API174
7.2.1 RequestAnimationFrame API幀動畫175
7.2.2 LayoutAnimation API布局動畫177
7.2.3 Animated API**動畫179
7.3 組件、React Native API、原生平颱API184
7.3.1 組件和API184
7.3.2 API和原生平颱API184
7.4 實現自己的Platform API185
7.4.1 支持iOS平颱186
7.4.2 支持Android平颱188
7.5 為應用添加更豐富的API189
7.5.1 提示框和編輯框——AlertIOS190
7.5.2 前後颱狀態變化——AppState193
7.5.3 Android物理“返迴鍵”——BackAndroid195
7.5.4 日期和時間選擇器——DatePickerAndroid/TimePickerAndroid196
7.5.5 基於位置的Geolocation200
7.5.6 鍵盤事件——Keyboard202
7.5.7 設備聯網狀態——NetInfo204
7.5.8 權限設置——PermissionsAndroid205
7.5.9 懸浮提示框——ToastAndroid207
7.6 小結208
第3篇 React Native混閤編程
第8章 React Native與原生平颱混閤編程(1)210
8.1 創建並移植項目210
8.2 訪問設備211
8.2.1 訪問iOS設備213
8.2.2 訪問Android設備214
8.3 訪問相冊217
8.3.1 讀取iOS相冊中的圖片219
8.3.2 讀取Android相冊中的圖片224
8.4 React Native與原生平颱的通信原理228
8.5 React Native平颱調用原生頁麵229
8.5.1 React Native平颱調用原生iOS頁麵231
8.5.2 React Native平颱調用原生Android頁麵234
8.6 原生平颱調用React Native組件238
8.6.1 iOS平颱調用React Native組件238
8.6.2 Android平颱調用React Native組件239
8.7 小結240
第9章 React Native與原生平颱混閤編程(2)241
9.1 使用相機拍攝圖片241
9.1.1 使用iOS相機拍攝241
9.1.2 使用Android相機拍攝244
9.2 添加圖片選擇提示框247
9.2.1 iOS平颱的提示247
9.2.2 Android平颱的提示249
9.3 重構圖片選擇庫251
9.3.1 iOS平颱的重構251
9.3.2 Android平颱的重構253
9.4 嚮iOS項目中添加React Native支持256
9.4.1 新建iOS項目256
9.4.2 新建React Native項目257
9.4.3 在iOS頁麵打開React Native組件259
9.5 嚮Android項目中添加React Native支持261
9.5.1 新建Android項目261
9.5.2 新建React Native項目261
9.5.3 在Android頁麵打開React Native組件262
9.6 小結264
第10章 電商App的復盤265
10.1 電商App的文件265
10.1.1 文件266
10.1.2 iOS原生代碼文件266
10.1.3 Android原生代碼文件267
10.2 電商App的結構267
10.2.1 Flexbox的整體布局268
10.2.2 應用的邏輯結構268
10.2.3 應用的通信過程269
10.3 優化和改進270
10.3.1 redux是什麼270
10.3.2 redux代碼示例271
10.3.3 redux生態274
10.4 用到的組件275
10.5 小結276
第4篇 App的發布和更新............
序 8
前言 9
本書目的 9
內容和組織結構 9
本書特色介紹 10
源代碼 10
緻謝 10
第1章 React Native簡介 12
1.1 環境搭建 12
1.1.1 安裝Node.js 12
1.1.2 安裝React Native 17
1.1.3 使用NVM管理Node.js版本 18
1.1.4 創建項目 20
1.2 從React 到 ReactNative 25
1.2.1 React簡介 26
1.2.2 React Native簡介 31
1.3 為什麼要使用React Native 36
1.4 如何學習React Native 36
1.5 說明 37
第2章 React Native開發基礎 37
2.1 flexbox布局 37
2.1.1 介紹 37
2.1.2 布局模型 38
2.1.3 伸縮容器屬性 38
2.1.4 伸縮項目屬性 60
2.1.5 在React Native中使用flexbox 72
2.1.6 實例 74
2.2 React中的JSX 82
2.2.1 JSX入門 83
2.2.2 JSX實戰之ReactJS 91
2.2.3 JSX實戰之ReactNative 116
2.3 React Native開發嚮導 120
2.3.1 配置文件 120
2.3.2 運行 125
2.3.3 調試 127
2.3.4 內部發布 134
2.4 參考資料 135
第3章 常用組件介紹及實踐 136
3.1 View組件 136
3.1.1 View介紹 136
3.1.2 案例:九宮格實現 136
3.2 Text組件 146
3.2.1 Text組件介紹 147
3.2.2 案例:網易新聞列錶展示 147
3.3 NavigatorIOS組件 157
3.3.1 NavigatorIOS組件介紹 158
3.3.2 案例:列錶頁跳轉詳情頁 159
3.4 TextInput組件 163
3.4.1 TextInput組件介紹 163
3.4.2 案例:搜索自動提示 164
3.5 Touchable類組件 174
3.5.1 TouchableHighlight組件 175
3.5.2 TouchableOpacity組件 177
3.5.3 TouchableWithoutFeedback組件 179
3.6 Image組件 179
3.6.1 Image組件介紹 179
3.6.2 加載網絡圖片 180
3.6.3 加載本地圖片 185
3.7 TabBarIOS組件 186
3.7.1 TabBarIOS組件介紹 186
3.7.2 案例:類QQ Tab切換 187
3.8 WebView組件 192
3.8.1 WebView組件介紹 192
3.8.2 案例:使用WebView組件加載微博頁麵 193
3.8.3 案例:新浪微博OAuth認證 196
第4章 常用API介紹及其實踐 199
4.1 AppRegistry 200
4.1.1 AppRegistry介紹 200
4.1.2 AppRegistry示例 200
4.2 AsyncStorage 202
4.2.1 AsyncStorage介紹 202
4.2.2 案例:購物車 203
4.3 AlertIOS 217
4.3.1 AlertIOS 217
4.3.2 AlertIOS組件的應用 217
4.4 ActionSheetIOS 221
4.4.1 ActionSheetIOS介紹 221
4.4.2 ActionSheetIOS應用 221
4.5 PixelRatio 225
4.5.1 PixelRatio介紹 225
4.5.2 PixelRatio應用 226
4.6 AppStateIOS 227
4.6.1 AppStateIOS介紹 227
4.6.2 AppStateIOS實例 228
4.7 StatusBarIOS 228
4.7.1 StatusBarIOS介紹 228
4.7.2 StatusBarIOS應用 229
4.8 NetInfo 231
4.8.1 NetInfo介紹 231
4.8.2 NetInfo示例 231
4.9 CameraRoll 232
4.9.1 CameraRoll介紹 232
4.9.2 CameraRoll應用 233
4.9.3 react-native-camera 243
4.10 VibrationIOS 247
4.10.1 VibrationIOS 247
4.11 Geolocation 248
4.11.1 Geolocation介紹 249
4.11.2 Geolocation應用 249
4.12 數據請求 252
4.12.1 XMLHttpRequest 252
4.12.2 Fetch 253
4.13 定時器 254
4.13.1 setTimeout 254
4.13.2 setInterval 255
4.13.3 setImmediate 255
4.13.4 使用requestAnimationFrame開發進度條 256
4.13.6 完整代碼 258
第5章 Native擴展 258
5.1 通信機製 258
5.1.1 模塊配置映射 258
5.1.2 通信流程 261
5.2 自定義Native API組件 264
5.2.1 模塊和方法定義 264
5.2.2 迴調函數 267
5.2.3 綫程 269
5.2.4 常量導齣 270
5.2.5 事件 272
5.2.6 實戰 273
5.3 構建Native UI組件 280
5.3.1 概述 281
5.3.2 UI組件的定義 281
5.3.3 UI組件屬性 282
5.3.4 組件方法 284
5.3.5 事件 285
5.3.6 實例 288
第6章 組件封裝 298
6.1 二級菜單組件 299
6.1.1 靜態組件的實現 299
6.1.2 實現組件的復用和封裝 305
6.1.3 應用二級菜單組件 320
6.2 日曆組件 322
6.2.1 開發日曆組件 323
6.2.2 應用日曆組件 337
6.3 開源組件 340
6.3.1 react-native-swiper 340
6.3.2 react-native-modal 346
第7章 熱更新和上架 353
7.1 動態更新 353
7.1.1 初始化設置 353
7.1.2 更新邏輯 355
7.1.3 迴滾策略 358
7.2 App上架 359
7.2.1 證書生成 359
7.2.2 注冊應用 367
7.2.4 上傳應用 370
第8章 企業內部通訊錄應用開發 373
8.1 需求提齣 373
8.2 技術架構 375
8.3 服務器端設計和開發 376
8.3.1 服務器端整體設計 376
8.3.2 用戶數據模型設計 377
8.3.2 公告數據模型設計 379
8.3.3 服務路由設計 380
8.3.4 創建項目 380
8.3.5 app.js入口文件 382
8.3.6 加載服務模塊到內存 385
8.3.7 工具類開發 386
8.3.8 用戶信息接口 387
8.3.9 公告消息接口 394
8.4 客戶端設計和開發 397
8.4.1 客戶端設計 397
8.4.2 工具組件和服務 400
8.4.3 添加依賴庫 402
8.4.4 程序入口和登錄 404
8.4.5 聯係人列錶 416
8.4.6 公告功能 428
8.4.7 管理功能 437
8.4.8 關於 464
8.4.9 建議 467
第9章 基於LBS的應用開發 468
9.1 功能設計 468
9.1.1 需求確定 468
9.1.2 開發目錄結構 469
9.2 程序入口和工具模塊 470
9.2.1 注冊應用程序 470
9.2.2 工具模塊 471
9.2.3 Nearby組件入口 473
9.3 列錶組件開發 478
9.3.1 通用列錶組件開發 478
9.3.2 完成列錶頁 489
9.4 詳情頁組件開發 496
9.5 WebView地圖模塊開發 500
9.7 綜閤效果 505
第10章 豆搜App 506
10.1 豆瓣API 506
10.1.1 熟悉豆瓣API 507
10.1.2 圖書、電影、音樂API 508
10.2 應用設計 510
10.2.1 功能設計 510
10.2.2 模塊劃分 511
10.3 公共模塊開發 512
10.3.1 工具類開發 512
10.3.2 服務列錶 514
10.3.3 Navigator封裝 515
10.3.4 公共頭封裝 516
10.3.5 WebView封裝 519
10.3.6 搜索框封裝 521
10.4 功能開發 523
10.4.1 入口組件 523
10.4.2 圖書列錶頁開發 525
10.4.3 圖書詳情頁開發 534
10.4.4 電影模塊開發 538
10.4.5 音樂模塊開發 546
10.5 完成豆搜App 553
评分
评分
评分
评分
评分
评分
评分
评分
本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度,google,bing,sogou 等
© 2025 tushu.tinynews.org All Rights Reserved. 求知書站 版权所有