React快速上手開發 React快速上手开发

斯托揚·斯特凡諾夫 (Stoyan Stefanov)

  • 出版商: 人民郵電
  • 出版日期: 2017-03-01
  • 定價: $294
  • 售價: 8.5$250
  • 語言: 簡體中文
  • 頁數: 187
  • 裝訂: 平裝
  • ISBN: 711544773X
  • ISBN-13: 9787115447739
  • 相關分類: JavaScriptReact
  • 立即出貨 (庫存=1)

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

商品描述

本書是React入門書。前3章介紹如何從空白的HTML頁面開始構建應用。第4章介紹JSX語法。從第5章開始,你會學習到在實際開發中可能用到的一些附加工具。介紹的例子包括JavaScript打包工具、單元測試、語法檢查、類型、在應用中組織數據流以及不可變量據。

作者簡介

作者:[保]斯托揚·斯特凡諾夫(Stoyan Stefanov)譯者:張俊達
Stoyan Stefanov Facebook開發工程師,圖像優化工具smush.it的作者,性能優化工具YSlow2.0的架構師。
曾多次在Velocity等技術大會上發表過演講。
另著有《JavaScript模式》和《JavaScript面向對象編程指南》,還為《高性能網站建設進階指南》和《高性能JavaScript》貢獻過內容。
個人站點是http://phpied.com。

張俊達畢業於華南理工大學,前端開發工程師,現任職於迅雷,主要負責移動Web開發工作。
關注前端領域的新技術,樂於分享。

目錄大綱

譯者序
前言

第1章Hello World 1 
1.1設置1 
1.2 HelloReact World 2 
1.3剛才發生了什麼4 
1.4 React.DOM.*4 
1.5特殊DOM屬性7 
1.6 ReactDevTools瀏覽器擴展8 
1.7下一步:自定義組件9 

第2章組件的生命週期10 
2.1基礎10 
2.2屬性12 
2.3 propTypes 13 
2.4 state 16 
2.5帶狀態的文本框組件16 
2.6關於DOM事件的說明19 
2.6.1傳統的事件處理20 
2.6.2 React的事件處理21 
2.7 props與state 21 
2.8在初始化state時使用props:一種反模式22 
2.9從外部訪問組件22 
2.10中途改變屬性24 
2.11生命週期方法25 
2.12生命週期示例:輸出日誌記錄26 
2.13生命週期示例:使用mixin 28 
2.14生命週期示例:使用子組件30 
2.15性能優化:避免組件更新32 
2.16 PureRenderMixin 34 


第3章Excel:一個出色的表格組件37 
3.1構造數據37 
3.2表頭循環38 
3.3消除控制台的警告信息40 
3.4添加<;td>;內容41 
3.5排序44 
3.6排序的視覺提示46 
3.7編輯數據47 
3.7.1可編輯單元格4 8 
3.7.2輸入字段的單元格50 
3.7.3保存50 
3.7.4結論與虛擬DOMDiff算法51 
3.8搜索52 
3.8.1狀態與界面54 
3.8.2篩選內容55 
3.8.3如何改進搜索功能57 
3.9即時回放58 
3.9.1如何改進回放功能59 
3.9.2有另一種實現方法嗎59 
3.10下載表格數據59 


第4章JSX 62 
4.1 HelloJSX 62 
4.2轉譯JSX 63 
4.3 Babel 64 
4.4客戶端64 
4.5關於JSX轉換66 
4.6在JSX中使用JavaScript 68 
4.7在JSX中使用空格69 
4.8在JSX中使用註釋70 
4.9 HTML實體71 
4.10展開屬性73 
4.11在JSX中返回多個節點75 
4.12 JSX和HTML的區別77 
4.12.1 class和for屬性不能用了嗎77 
4.12.2 style屬性值是一個對象77 
4.12.3閉合標籤78 
4.12.4用駝峰法命名屬性78 
4.13 JSX和表單78 
4.13.1 onChange處理器78 
4.13.2 value和defaultValue的區別79 
4.13.3 <;textarea>;的值79 
4.13.4 <;select>;的值80 
4.14使用JSX實現Excel組件82 


第5章為應用開發做準備83 
5.1一個模板應用83 
5.1.1文件和目錄84 
5.1.2 index.html 85 
5. 1.3 CSS 86 
5.1.4 JavaScript 86 
5.1.5更現代化的JavaScript 86 
5.2安裝必備工具89 
5.2.1 Node.js 90 
5.2.2 Browserify 90 
5.2.3 Babel 90 
5.2.4 React相關91 
5.3開始構建91 
5.3 .1轉譯JavaScript 91 
5.3.2打包JavaScript 92 
5.3.3打包CSS 92 
5.3.4大功告成92 
5.3.5 Windows版本93 
5.3.6在開發過程中構建93 
5.4發布94 
5.5更進一步95 


第6章構建應用96 
6.1 Whinepadv.0.0.196 
6.1.1基本設置97 
6.1.2開始編寫代碼97 
6.2組件99 
6.2.1設置99 
6.2.2組件發現工具100 
6.2.3 <;Button>;組件101 
6.2.4 Button.css 102 
6.2.5 Button.js 103 
6.2.6表單106 
6.2.7 <;Suggest>; 106 
6.2.8 <;Rating>;組件109 
6.2.9 <;FormInput>;“工廠組件”112 
6.2.10 <; Form>; 115 
6.2.11 <;Actions>; 117 
6.2.12對話框119 
6.3應用配置121 
6.4 <;Excel>;:改進的新版本123 
6.5 <;Whinepad>; 131 
6.6總結134 


第7章lint、 Flow、測試與復驗136 
7.1 package.json 136 
7.1.1配置Babel 137 
7.1.2腳本137 
7.2 ESLint138 
7.2.1安裝138 
7.2. 2運行138 
7.2.3規則列表140 
7.3 Flow 140 
7.3.1安裝141 
7.3.2運行141 
7.3.3註冊類型檢查141 
7.3.4修復<;Button>; 142 
7.3.5 app.js 144 
7.3.6關於props和state類型檢查的更多內容145 
7.3.7導出/導入類型147 
7.3.8類型轉換148 
7.3.9 invariant 148 
7.4測試150 
7.4.1安裝150 
7.4.2首個測試151 
7.4.3首個React測試152 
7.4.4測試<;Button>;組件153 
7.4.5測試<;Actions>;組件157 
7.4.6更多模擬交互159 
7.4.7測試完整的交互160 
7.4.8代碼覆蓋率163 


第8章Flux 165 
8.1理念166 
8.2回顧Whinepad 166 
8.3 Store 167 
8.3.1 Store事件169 
8.3.2在<;Whinepad>;中使用Store 170 
8.3.3在<;Excel>;中使用Store 173 
8.3.4在<; Form>;中使用Store 174 
8.3.5界定174 
8.4 Action 175 
8.4.1 CRUDAction 175 
8.4.2搜索與排序176 
8.4.3在<;Whinepad>;中使用Action 178 
8.4.4在<;Excel>;中使用Action 179 
8.5 Flux回顧181 
8.6 immutable 182 
8.6.1 immutable存儲數據183 
8.6.2 immutable數據操作184 

關於 者187 

關於封面187