作 者:(美)安東尼·阿科馬佐 等 著 歐陽獎 譯
定 價:169
出 版 社:人民郵電出版社
出版日期:2021年01月01日
頁 數:628
裝 幀:平裝
ISBN:9787115551382
web開發人員需要考慮使用不同的代碼解決瀏覽器兼容性問題。React改變了這種局面,它不僅可以幫你為用戶創建良好的應用程序,而且還可以讓你成為一名更出色的開發人員。本書介紹了React的整個生態繫統,包括React核心庫和許多工具。讀完本書後,你和你的團隊將擁有構建可靠且功能強大的React應用程序所需的一切知識。本書不隻是一本書,而且還可以當作一門課程來學習,每一章都配有示例代碼,提供源代碼下載本書能幫助你“一站式”獲取React的繫統知識和正確工具,免去四處搜羅碎片化知識的煩惱,為等
●第一部分
第1章 第一個React Web應用程序2
1.1構建Product Hunt項目2
1.2設置開發環境2
1.3針對Windows用戶的特殊說明3
1.4JavaScript ES6/ES73
1.5開始4
1.6什麼是組件8
1.7構建Product組件16
1.8讓數據驅動Product組件18
1.9應用程序的第一次交互:投票事件響應26
1.10更新state和不變性33
1.11用Babel插件重構transform-class-properties37
1.12祝賀你41
第2章 組件42
2.1計時器應用程序42
2.2開始43
2.3將應用程序分解為組件46
2.4從頭開始構建React應用程序的步驟50
2.5第(2)步:構建應用程序的靜態版本52
2.6第(3)步:確定哪些組件應該是有狀態的58
2.7第(4)步:確定每個state 應該位於哪個組件中60
2.8第(5)步:通過硬編碼來初始化state61
2.9第(6)步:添加反向數據流68
2.10更新計時器72
2.11刪除計時器77
2.12添加計時功能79
2.13添加啟動和停止功能81
2.14方法回顧86
第3章組件和服務器87
3.1介紹87
3.2server.js87
3.3服務器API88
3.4使用API90
3.5從服務器加載狀態92
3.6client94
3.7向服務器發送開始和停止請求97
3.8向服務器發送創建、更新和刪除請求99
3.9下一步100
第4章JSX和虛擬DOM101
4.1React使用了虛擬DOM101
4.2為什麼不修改實際的DOM101
4.3什麼是虛擬DOM101
4.4虛擬DOM片段102
4.5ReactElement102
4.6JSX107
4.7參考文獻113
第5章具有props、state和children的高級組件配置114
5.1介紹114
5.2如何使用本章115
5.3ReactComponent115
5.4props是參數117
5.5PropTypes118
5.6使用getDefaultProps()獲取默認props119
5.7上下文120
5.8state123
5.9無狀態組件131
5.10使用props.children與子組件對話133
5.11總結137
5.12參考文獻137
第6章表單138
6.1表單101138
6.2文本輸入142
6.3遠程數據163
6.4異步持久性171
6.5Redux176
6.6表單模塊185
第7章Webpack與Create React App結合使用186
7.1JavaScript模塊186
7.2Create React App188
7.3探索Create React App188
7.4Webpack基礎196
7.5對示例應用程序進行修改201
7.6創建生產構建202
7.7彈出205
7.8Create React App和API服務器一起使用207
7.9Webpack總結216
第測試218
8.1不使用框架編寫測試218
8.2Jest是什麼226
8.3使用Jest226
8.4React應用程序的測試策略232
8.5使用Enzyme測試基本的React組件234
8.6為食物查找應用程序編寫測試256
8.7編寫FoodSearch.test.js264
8.8進一步閱讀287
第9章路由289
9.1URL中有什麼289
9.2構建react-router組件292
9.3使用React Router的動態路由316
9.4支持身份驗證的路由337
9.5回顧一下348
第二部分
第10章 Flux和Redux介紹350
10.1Flux誕生的原因350
10.2Flux實現351
10.3Redux352
10.4構建一個計數器352
10.5構建store358
10.6Redux的核心361
10.7早期的聊天應用程序362
10.8構建reducer()函數365
10.9訂閱store370
10.10將Redux連接到React373
10.11下一步380
第11章 Redux中間件381
11.1準備381
11.2使用redux庫的createStore()函數382
11.3將消息表示為處於狀態中的對像383
11.4引入多線程387
11.5添加ThreadTabs組件393
11.6在reducer中支持多線程395
11.7添加OPEN_THREAD動作404
11.8拆分reducer函數407
11.9添加messagesReducer()函數412
11.10在reducer中定義初始狀態417
11.11使用redux的combineReducers()函數420
11.12下一步421
第12章 表示組件和容器組件與Redux一起使用422
12.1表示組件和容器組件422
12.2拆分ThreadTabs組件424
12.3拆分Thread組件428
12.4從App組件中移除store433
12.5使用react-redux庫創建容器組件434
12.6動作創建器443
12.7總結445
第13章 使用GraphQL446
13.1第一個GraphQL查詢446
13.2GraphQL的好處447
13.3GraphQL和REST448
13.4GraphQL和SQL449
13.5Relay 框架和GraphQL框架450
13.6本章預覽450
13.7使用GraphQL451
13.8探索GraphiQL451
13.9GraphQL語法454
13.10復雜類型458
13.11探索Graph460
13.12圖節點462
13.13viewer463
13.14圖的連接和邊464
13.15變更467
13.16訂閱468
13.17GraphQL和JavaScript結合使用469
13.18GraphQL與React結合使用470
13.19總結471
第14章 GraphQL服務器472
14.1編寫一個GraphQL服務器472
14.2Windows用戶的特殊設置472
14.3連接496
14.4總結512
第15章 經典Relay514
15.1介紹514
15.2Relay是一個數據架構520
15.3Relay和GraphQL約定520
15.4將Relay添加到應用程序中529
15.5BooksPage組件545
15.6使用變更修改數據554
15.7構建圖書頁面554
15.8變更559
15.9總結565
15.10參考資料565
第16章 React Native567
16.1初始化568
16.2路由569
16.3571
16.4Web組件與原生組件576
16.5樣式584
16.6HTTP請求602
16.7什麼是promise602
16.8一次性使用保證605
16.9創建新promise605
16.10使用React Native進行調試606
16.11資料參考608
附錄APropTypes(圖靈社區下載)
附錄BES6(圖靈社區下載)
附錄CReact Hook(圖靈社區下載)
更新日志(圖靈社區下載)
使用React能讓前端開發人員用更少、更安全的代碼來構建更可靠、更強大的應用程序。本書分為兩部分,全面介紹了React的相關主題。第一部分通過例子循序漸進地講解基礎知識,包括創建一個投票應用程序、編寫組件、處理用戶交互、管理富表單,以及與服務器交互,此外還探索了Create React App的工作原理,編寫自測試,以及使用客戶端路由構建多頁面應用程序。第二部分探討在大型應用程序產品中使用的更高級的概念——數據的架構、傳輸和管理的策略,講解了Redux、GraphQL、Relay,以及如何使用React Native編寫原生、跨平臺的移動應用程序。書中每一章都配有示例代碼,有助於讀者鞏固所學。