React Cookbook中文版:87個案例帶你精通React框架 React Cookbook: Recipes for Mastering the React Framework

Griffiths, David, Griffiths, Dawn 譯 錢昱//姚明壯//李青

商品描述

React可以幫助你便捷地創建和處理應用程序,但要掌握如何將各部分功能有機地整合在一起卻並不容易。
如何驗證表單?
如何在保持代碼精簡的情況下實現複雜的多步驟用戶操作?
如何測試代碼?
如何保證可維護性?
如何連接後端?
如何提高代碼可讀性?
本書可以幫你快速解決這些問題。
許多書籍教你如何入門、理解框架,或者如何將組件庫與React結合使用,但很少提供代碼示例來幫助你解決具體的問題。
本書簡明易懂,包含開發人員使用React解決常見問題時的示例代碼,
這些解決方案按主題和問題類型分類,便於你索引和查找。
通過閱讀本書,你將學會:向使用React構建的單頁面應用程序引入豐富多彩的UI。
 創建可以離線安裝和使用的漸進式Web應用程序。
與REST、GraphQL等後端服務集成。
自動測試應用程序的可訪問性。
使用WebAuthn引入指紋驗證和安全令牌,增強應用程序的安全性。
處理bug,並避免常見的功能和性能問題。

目錄大綱

前言
第1章創建應用程式
1.1 創建簡單的應用程式
1.2 用Gatsby創建內容豐富的應用程式
1.3 用Razzle創建通用應用程式
1.4 使用Next.js管理服務端和客戶端程式碼
1.5 用Preact創建輕量級應用程式
1.6 用nwb建立元件庫
1.7 用Webpacker為Rails專案新增React
1.8 用Preact建立自訂HTML標籤
1.9 在元件開發中使用Storybook
1.10 用Cypress在瀏覽器中測試程式碼
第2章路由
2.1 使用響應式路由建立介面
2.2將狀態移入路由
2.3 使用MemoryRouter進行單元測試
2.4 使用提示窗確認頁面退出操作
2.5 用React Transition Group建立過渡
2.6 建立安全路由
第3章管理狀態
3.1 用reducer來管理複雜狀態
3.2 實現撤銷功能
3.3 建立和驗證表單
3.4 根據時間變化設定定時任務
3.5 監控在線狀態
3.6 用Redux管理全局狀態
3.7 用Redux持久化庫實現頁面重新加載
3.8 用reselect計算派生狀態
第4章交互設計
4.1 建立錯誤集中處理器
4.2 創建交互式幫助嚮導
4.3 在複雜互動中使用reducer
4.4 新增按鍵互動
4.5 對豐富的內容使用Markdown
4.6 使用CSS類別引入動畫效果
4.7 在React中引入動畫庫
4.8 使用TweenOne為資訊圖表新增動畫
第5章連接後端服務
5.1 將網路請求轉換為Hook
5.2 使用狀態計數器自動更新資料
5.3 使用token來取消網路請求
5.4 使用Redux的中間件發起網路請求
5.5 連接到GraphQL
5.6 透過防手震減少網路負載
第6章元件庫
6.1 使用Material-UI建立Material Design風格的應用程式
6.2 使用React Bootstrap為應用程式引入簡單的使用者介面
6.3 使用React Window展示大量資料
6.4 使用Material-UI建立響應式對話方塊
6.5 使用React Admin建立管理控制台
6.6 沒有設計師?使用Semantic UI
第7章安全性
7.1 使用安全API替代安全路由
7.2 使用實體令牌進行驗證
7.3 使用HTTPS
7.4 使用指紋認證
7.5 敏感操作前驗證登入資訊
7.6 使用單一因素身分驗證
7.7 在Android裝置上測試
7.8使用ESlint檢查程式碼安全
7.9 讓登入表單對瀏覽器更友善
第8章測試
8.1 使用React Testing Library
8.2 使用Storybook做渲染測試
8.3 使用Cypress做無伺服器測試
8.4 使用Cypress做離線測試
8.5 使用Selenium在瀏覽器中測試
8.6 用ImageMagick測試跨瀏覽器的視覺效果
8.7 為行動端瀏覽器新增控制台
8.8 消除測試中的隨機性
8.9 時間旅行
第9章無障礙存取
9.1 使用地標元素
9.2 應用role、alt和title
9.3 使用ESlint檢查可訪問性
9.4 在運行時使用axe DevTools
9.5 使用Cypress Axe自動化瀏覽器測試
9.6 新增跳過按鈕
9.7 新增跳過區域
9.8 將焦點鎖定在模態視窗中
9.9 使用Speech API建立頁面閱讀器
第10章效能
10.1 使用瀏覽器效能工具
10.2 使用Profiler追蹤渲染
10.3 建立Profiler單元測試
10.4 精確測量時間
10.5 使用程式碼分割技術減少應用程式體積
10.6 使用promise實現網路請求非同步化
10.7 使用服務端渲染
10.8 使用Web Vitals
第11章漸進式Web應用
11.1 使用Workbox建立Service Worker
11.2 使用Create React App建立漸進式Web應用程式
11.3 快取第三方資源
11.4 自動重新載入Service Worker 
11.5 新增通知
11.6 使用後同步進行離線修改
11.7 新增自訂安裝介面
11.8 提供離線響應