《AngularJS高級編程》是一部2016.02.01出版的論文,作者是[美]Valeri Karpov、Diego Netto 王肖峰 譯。
基本介紹
- 書名:AngularJS高級編程
- 作者:[美]Valeri Karpov、Diego Netto 王肖峰 譯
- ISBN:9787302428664
- 定價:59.80元
- 出版時間:2016.02.01
- 印次:1-1
內容簡介,目錄,
內容簡介
用AngularJS編寫高級套用的完整指南 這是一個令Web開發人員激動的時代,掌握JavaScript語言技能的人才變得炙手可熱。AngularJS迅速蛻變為領先的新一代客戶端Web框架;可供個人、小團隊和大公司構建和測試基於瀏覽器的、極其複雜的套用。 《AngularJS高級編程》內容廣泛,涵蓋構建首個AngularJS套用乃至內嵌、構建系統和自動執行集成測試等高級主題。如果你已經熟悉基本編程知識,並希望編寫在瀏覽器UI中顯示複雜數據的Web套用,或快捷高效地模擬本地套用的移動Web套用,那么本書將是值得你反覆研讀的必備指南。
目錄
第1章構建簡單的AngularJS套用 1
1.1構建目標 1
1.2學習內容 3
1.3步驟1:使用Yeoman搭建項目 4
1.3.1安裝Yeoman 4
1.3.2搭建項目 5
1.3.3瀏覽套用 6
1.3.4清理 7
1.4步驟2:創建監視列表 8
1.4.1套用模組 8
1.4.2Watchlist服務 10
1.4.3監視列表面板指令 12
1.5步驟3:配置客戶端路由 18
1.5.1AngularngRoute模組 18
1.5.2添加新的路由 19
1.5.3使用路由 20
1.5.4模板視圖 20
1.6步驟4:創建導航欄 22
1.6.1更新HTML 22
1.6.2創建MainCtrl 23
1.7步驟5:添加股票 25
1.7.1創建CompanyService 25
1.7.2創建AddStock模態框 26
1.7.3更新WatchlistService 27
1.7.4實現WatchlistCtrl 29
1.7.5修改監視列表視圖 30
1.8步驟6:集成YahooFinance 31
1.8.1創建QuoteService 31
1.8.2從控制台調用服務 33
1.9步驟7:創建股票表格 34
1.9.1創建StkStockTable指令 34
1.9.2創建StkStockRow指令 35
1.9.3創建股票表格模板 37
1.9.4更新監視列表視圖 38
1.10步驟8:內聯表單編輯 39
1.10.1創建contenteditable指令 39
1.10.2更新StkStockTable模板 41
1.11步驟9:格式化貨幣 42
1.11.1創建StkSignColor指令 42
1.11.2更新StockTable模板 43
1.12步驟10:為價格變動添加動畫 44
1.12.1創建StkSignFade指令 44
1.12.2更新StockTable模板 46
1.13步驟11:創建儀錶盤 47
1.13.1更新儀錶盤控制器 47
1.13.2更新儀錶盤視圖 50
1.14生產環境部署 52
1.15小結 53
第2章智慧型工作流和構建工具 55
2.1工具的作用 55
2.2Bower 56
2.2.1開始使用Bower 56
2.2.2搜尋包 56
2.2.3安裝包 56
2.2.4版本化依賴 57
2.3Grunt 57
2.3.1開始使用Grunt 57
2.3.2安裝外掛程式 59
2.3.3目錄結構 59
2.3.4Gruntfile 60
2.3.5配置任務和目標 61
2.3.6創建自定義任務 66
2.4Gulp 69
2.4.1開始使用Gulp 70
2.4.2安裝外掛程式 70
2.4.3Gulpfile 70
2.4.4創建任務 71
2.4.5參數和異步行為 75
2.4.6Gulp、Grunt和Make 79
2.5Yeoman 81
2.5.1開始使用Yeoman 81
2.5.2搭建新的項目 81
2.5.3瀏覽外掛程式和任務 82
2.5.4別名任務和工作流 87
2.5.5修改 88
2.5.6子生成器 88
2.5.7流行的生成器 88
2.6小結 89
第3章架構 91
3.1架構如此重要的原因 91
3.2控制器、服務和指令 92
3.2.1控制器 92
3.2.2服務 99
3.2.3指令 103
3.2.4小結 104
3.3使用模組組織代碼 104
3.4目錄結構 109
3.4.1小型項目 110
3.4.2中型項目 110
3.4.3大型項目 112
3.5模組載入器 114
3.5.1RequireJS 114
3.5.2Browserify 117
3.6構造用戶身份驗證的最佳實踐 121
3.6.1服務:從伺服器載入數據和保存數據 122
3.6.2控制器:向HTML公開API 122
3.6.3指令:與DOM進行互動 123
3.7小結 124
第4章數據綁定 125
4.1數據綁定 125
4.2數據綁定的作用 128
4.3AngularJS作用域 130
4.3.1作用域繼承 131
4.3.2性能考慮 136
4.3.3過濾器和數據綁定 139
4.4小結 149
第5章指令 151
5.1指令 151
5.1.1了解指令 151
5.1.2指令的帕累托分布 153
5.2深入理解指令 161
5.2.1使用模板的指令組合 161
5.2.2為指令創建不同的作用域 163
5.2.3限制和替換設定 170
5.2.4繼續前行 173
5.3在運行時改變指令模板 173
5.3.1內嵌 173
5.3.2編譯設定或者編譯與連結 177
5.4小結 178
第6章模板、位置和路由 179
6.1第1部分:模板 181
6.1.1在模板中使用ngInclude指令 182
6.1.2ngInclude和性能 184
6.1.3使用腳本標記包含模板 185
6.1.4$templateCache服務 187
6.1.5下一步:模板和數據綁定 188
6.2第2部分:$location服務 190
6.2.1URL中包含的信息 190
6.2.2介紹$location 190
6.2.3使用$location追蹤頁面狀態 192
6.2.4下一步:路由和SPA 194
6.3第3部分:路由 194
6.3.1使用ngRoute模組 195
6.3.2$routeProvider提供者 197
6.3.3$routeParams服務 199
6.3.4SPA中的導航 199
6.3.5搜尋引擎和SPA 200
6.3.6在伺服器上設定Prerender 201
6.3.7GoogleAJAXCrawling規範 202
6.3.8為搜尋引擎配置AngularJS 203
6.3.9真正的搜尋引擎集成 204
6.3.10介紹動畫 204
6.3.11實際的ngAnimate模組 206
6.4小結 208
第7章服務、工廠和提供者 209
7.1依賴注入概述 210
7.1.1$injector服務 211
7.1.2函式註解 212
7.2構建自己的服務 213
7.2.1factory()函式 214
7.2.2service()函式 216
7.2.3provider()函式 220
7.3服務的常見用例 224
7.3.1構建$user服務 224
7.3.2構建$stockPrice服務 226
7.4使用內置提供者 227
7.4.1自定義插值分隔設定 228
7.4.2使用$compileProvider的白名單連結 229
7.4.3使用$rootScopeProvider的全局表達式屬性 231
7.5小結 233
第8章伺服器通信 235
8.1將要學習的內容 235
8.2約定簡介 236
8.3發起HTTP請求的服務 237
8.3.1$http 238
8.3.2$resource服務 250
8.4使用Twitter的RESTAPI 253
8.5使用StrongLoopLoopBack搭建RESTAPI 255
8.6在AngularJS中使用Web套接字 261
8.7在AngularJS中使用Firebase 264
8.8小結 265
第9章測試和調試AngularJS套用 267
9.1AngularJS測試哲學 267
9.2AngualrJS中的單元測試 271
9.2.1Mocha測試框架 271
9.2.2使用Karma在瀏覽器中執行單元測試 275
9.2.3使用Sauce在雲中執行瀏覽器測試 278
9.2.4評估單元測試選項 282
9.3DOM集成測試 283
9.3.1$httpBackend指南 283
9.3.2將要測試的頁面 287
9.3.3使用ng-scenario執行DOM集成測試 288
9.3.4使用protractor執行DOM集成測試 294
9.3.5評估ng-scenario和protractor 300
9.4調試AngularJS套用 300
9.4.1debug模組 300
9.4.2使用ChromeDevTools進行調試 302
9.5小結 305
第10章繼續前行 307
10.1使用Angular-UIBootstrap 308
10.1.1模態框 308
10.1.2日期選擇器 311
10.1.3時間選擇器 312
10.1.4自定義模板 313
10.2使用Ionic框架開發的混合移動套用 317
10.2.1設定Ionic、Cordova和AndroidSDK 317
10.2.2在Ionic套用中使用AngularJS 318
10.2.3為生產使用Yeoman工作流和構建 321
10.3集成開源JavaScript和AngularJS 322
10.3.1使用Moment操作日期和時區 322
10.3.2使用Mongoose實現模式驗證和深度對象 326
10.4AngularJS和ECMAScript6 333
10.5小結 334
附錄資源 337