深入淺出 React 開發指南

趙林林著

  • 出版商: 機械工業
  • 出版日期: 2023-06-01
  • 售價: $954
  • 貴賓價: 9.5$906
  • 語言: 簡體中文
  • 頁數: 474
  • 裝訂: 平裝
  • ISBN: 7111729420
  • ISBN-13: 9787111729426
  • 相關分類: React
  • 立即出貨 (庫存 < 3)

買這商品的人也買了...

商品描述

本書講述了React各個模塊基礎和進階用法,並提供了相應的案例。
還深入分析了React內部運轉機制,同時詳細介紹了React配套的生態系統。
本書共14章,包括邂逅React、了解JSX、React組件、React更新驅動、React生命週期、React狀態獲取與傳遞、
工程化配置及跨平台開發、React架構設計、高性能React、React運行時原理探秘、
玩轉React Hooks、React-Router、React-Redux狀態管理工具和React實踐。
本書適合具有一定React開發基礎,但希望更加全面、深入理解React的前端閱讀。

目錄大綱

前言
第1章邂逅React/
1.1React的優勢分析/
1.2React 發展歷程/
第2章了解JSX/
2.1認識JSX/
2.1.1JSX是什麼/
2.1.2React.createElement/
2.1.3JSX 轉換邏輯/
2.1.4ReactElement對象/
2.2操作JSX/
2.2.1JSX與Element對象/
2.2.2Element方法集/
2.2.3Element對象持久化/
2.3JSX轉換Element對象流程/
2.3.1createElement原理揭秘/
2.3.2cloneElement原理揭秘/
2.4實踐:可控性渲染/
2.5Babel解析JSX/
2.5.1Babel插件/
2.5.2API層面模擬實現/
第3章React組件/
3.1組件是什麼/
3.1.1組件的定義/
3.1.2組件的特性/
3.2兩種類型的組件/
3.2.1類組件/
3.2.2函數組件/
3.3組件的通信方式/
3.3.1props和callback方式/
3.3.2eventBus事件總線/
3.3.3其他方式/
3.4組件的設計模式/
3.5組件的繼承/
3.5.1繼承模式的介紹/
3.5.2繼承模式實踐:編寫權限路由/
3.6高階組件(HOC)/
3.6.1什麼是高階組件/
3.6.2高階組件解決了什麼問題/
3.6.3高階組件之屬性代理/
3.6.4高階組件之反向繼承/
3.6.5高階組件功能/
3.6.6高階組件注意事項/
3.6.7高階組件實踐:渲染分片/
3.6.8高階組件功能總結/
第4章React更新驅動/
4.1React 驅動源/
4.1.1誰在驅動React更新/
4.1.2React更新流/
4.2React props/
4.2.1props的概念及作用/
4.2.2props 的使用技巧/
4.3組合模式和render props 模式/
4.3.1組合模式/
4.3.2實踐:組合模式實現tab和tabItem/
4.3.3render props模式/
4.4State驅動/
4.4.1類組件setState介紹/
4.4.2函數組件中的useState/
4.5主流框架批量更新模式/
4.5.1宏任務和微任務/
4.5.2微任務|宏任務實現批量更新/
4.5.3可控任務實現批量更新/
4.6兩種模式下的State更新/
4.6.1legacy模式和concurrent模式/
4.6.2老版本legacy模式下的更新/
4.6.3新版本concurrent模式下的更新/
4.6.4flushSync提高優先級/
4.7外部數據源/
4.7.1什麼是外部數據源/
4.7.2useSyncExternalStore介紹/
4.7.3useSyncExternalStore原理及其模擬/
第5章React生命週期/
5.1生命週期介紹/
5.1.1生命週期意義及兩大階段/
5.1.2React生命週期及其特點/
5.2類組件生命週期/
5.2.1類組件初始化流程及其生命週期/
5.2.2類組件更新流程及其生命週期/
5.2.3類組件銷毀流程及其生命週期/
5.2.4commit階段細節補充/
5.3類組件生命週期的作用/
5.3.1類組件生命週期能做些什麼/
5.3.2類組件渲染錯誤邊界/
5.4函數組件生命週期替代方案/
5.4.1useEffect和useLayoutEffect/
5.4.2useInsertionEffect/
5.4.3生命週期替代方案/
5.5實踐:實現ScrollView組件/
第6章React狀態獲取與傳遞/
6.1ref 對象介紹/
6.2ref 使用及應用場景/
6.2.1ref 的使用/
6.2.2forwardref 轉發ref/
6.2.3ref 其他應用場景/
6.3Context 介紹/
6.3.1什麼是Context/
6.3.2Context 解決了什麼問題/
6.4新老版本Context/
6.4.1老版本Context/
6.4.2新版本Context/
6.4.3動態Context/
6.5Context 特性/
6.5.1嵌套多個Context/
6.5.2逐層傳遞Provider/
6.6Context實現切換主題功能/
第7章工程化配置及跨平台開發/
7.1React 環境搭建/
7.1.1環境搭建/
7.1.2create-react-app創建項目/
7.2CSS模塊化/
7.2.1為什麼要用CSS模塊化/
7.2.2CSS模塊化之CSS Modules/
7.2.3CSS模塊化之CSS IN JS/
7.2.4CSS模塊化總結/
7.3React服務端渲染/
7.3.1React SSR流程分析/
7.3.2React SSR框架Next.js/
7.4React Native跨平台開發/
7.4.1從JS引擎到JSI/
7.4.2React Native簡介/
第8章React架構設計/
8.1虛擬DOM與fiber/
8.1.1虛擬DOM/
8.1.2React fiber/
8.2fiber架構/
8.2.1fiber樹的構成/
8.2.2fiber樹的創建流程/
8.2.3fiber樹的更新流程/
8.3React中的位運算/
8.3.1為什麼要用位運算/
8.3.2React位掩碼場景——更新優先級/
8.3.3React位掩碼場景——更新上下文/
8.3.4React位掩碼場景——更新標識/
8.4React數據更新架構設計/
8.4.1React更新前置設計/
8.4.2React更新後置設計/
8.5React事件系統設計/
8.5.1React事件系統介紹/
8.5.2事件系統設計/
8.5.3新老版本事件系統差異/
第9章高性能React/
9.1React內部更新調優/
9.1.1調和優化手段/
9.1.2diff算法/
9.2React外部渲染控制/
9.2.1React渲染本質/
9.2.2React渲染控製手段/
9.2.3對React渲染的思考/
9.3任務調度/
9.3.1為什麼要使用異步調度/
9.3.2Scheduler核心實現/
9.4過渡更新任務/
9.4.1Transition使命/
9.4.2Transition模擬場景/
9.4.3Transition具體實現/
9.4.4Transition實現原理/
9.5異步組件和懶加載/
9.5.1異步組件和Suspense/
9.5.2Suspense實現懶加載/
9.5.3Suspense和React.lazy原理實現/
9.5.4React V18 SuspenseList/
9.5.5hydrate模式下的Suspense新特性/
9.5.6Suspense未來可期/
9.6React海量數據處理/
9.6.1渲染切片/
9.6.2長列表優化方案/
9.7React使用細節處理/
9.7.1React中的防抖和節流/
9.7.2React中的動畫/
9.7.3在React中防止內存洩露/
9.7.4在React中合理使用狀態/
9.8React性能問題檢測/
9.8.1Profiler性能檢測工具/
9.8.2StrictMode嚴格模式/
9.8.3調試工具react-devtools/
第10章React運行時原理探秘/
10.1React運行時總覽/
10.1.1初始化流程/
10.1.2更新流程/
10.1.3更新入口scheduleUpdateOnFiber/
10.1.4更新準備工作:標記ChildLanes /
10.1.5開始更新:兩大階段渲染和commit /
10.2渲染階段流程探秘/
10.2.1fiber更新循環workLoop/
10.2.2最小的更新單元/
10.2.3從beginWork到組件更新全流程/
10.2.4completeWork階段細節/
10.3Commit階段流程探秘/
10.3.1更新標誌/
10.3.2beforeMutation階段/
10.3.3mutation階段/
10.3.4layout階段/
10.4State更新揭秘/
10.4.1React批量更新原理/
10.4.2legacy模式更新流程/
10.4.3Concurrent模式更新流程/
10.5Context原理揭秘/
10.5.1Context對象的本質/
10.5.2Provider(提供者)/
10.5.3Context更新流程/
10.5.4Consumer、useContext和contextType/
10.5.5Context流程總結/
10.6ref原理揭秘/
10.6.1ref的處理時機和邏輯/
10.6.2ref的處理特性/
10.7scheduler異步調度原理/
10.7.1進入調度scheduleCallback/
10.7.2Concurrent模式如何中斷渲染/
10.8React事件原理/
10.8.1新版本事件系統核心實現/
10.8.2老版本事件系統原理差異/
第11章玩轉React Hooks/
11.1Hooks 概覽/
11.1.1數據更新驅動/
11.1.2執行副作用/
11.1.3狀態的獲取與傳遞/
11.1.4狀態的派生與保存/
11.1.5工具Hooks/
11.2Hooks原理/
11.2.1Hooks與fiber/
11.2.2renderWithHooks執行函數/
11.2.3Hooks初始化流程/
11.2.4Hooks更新流程/
11.3自定義Hooks設計/
11.3.1全面理解自定義Hooks/
11.3.2自定義Hooks設計角度分析/
11.4自定義Hooks實踐/
11.4.1實踐一:自動上報pv/click的埋點/
11.4.2實踐二:帶查詢分頁加載的長列表/
11.4.3實踐三:Hooks實現React-Redux/
第12章React-Router/
12.1Spa核心原理/
12.1.1核心原理/
12.1.2History庫核心實現/
12.1.3History原理總結/
12.2新老版本路由設計/
12.2.1React-Router核心組成部分/
12.2.2React-Router使用指南/
12.2.3自定義路由及其實踐/
12.2.4新版React-Router V6/
12.3老版本路由原理/
12.4新版本路由原理/
12.4.1React-Router V6核心原理/
12.4.2新老版本對比/
12.5實踐:從零到一實現路由系統/
12.5.1設計思想/
12.5.2代碼實現/
12.5.3驗證效果/
第13章React-Redux狀態管理工具/
13.1Redux /
13.1.1Flux架構概念/
13.1.2Redux介紹/
13.2Redux原理淺析/
13.2.1Redux核心API的實現/
13.2.2中間件原理/
13.3React-Redux介紹及其原理/
13.3.1React-Redux介紹/
13.3.2React-Redux實踐/
13.3.3React-Redux原理/
第14章React實踐/
14.1實現表單系統/
14.1.1表單設計思路/
14.1.2表單邏輯狀態層/
14.1.3表單UI層/
14.1.4功能驗證/
14.2彈窗設計與實踐/
14.2.1設計思路/
14.2.2代碼實現及功能驗證/
14.3Keepalive功能的設計與實踐/
14.3.1背景:React新屬性offScreen/
14.3.2設計思想/
14.3.3架構設計/
14.3.4具體實現最終呈現的Demo效果/