揭秘 Angular, 2/e

揭秘 Angular, 2/e

作者: 廣發證券互聯網金融技術團隊
出版社: 電子工業
出版在: 2018-07-01
ISBN-13: 9787121342721
ISBN-10: 7121342723
裝訂格式: 平裝
總頁數: 576 頁




內容描述


本書作為前版《揭秘Angular 2》的重大升級,是緊跟Angular.js新版本的實戰權威指南。
Angular誕生於Google,已用於多款Google及全球商業產品。
它是一套JavaScript前端框架,旨在開發當下流行的數據驅動的單頁面Web應用,其核心特性是:MVC、模塊化、自動雙向數據綁定、語義化標簽、依賴註入等。
作為一部系統講解流行前端框架?Angular 新版的權威著作,本書覆蓋入門、進階和實戰三大主題。
第一部分從前端的故事起點說起,然後對Angular以及TypeScript進行了簡單的介紹,接著通過一個通訊錄例子讓讀者快速入門Angular的開發;
第二部分則深入講解了Angular架構以及Angular核心內容,包括組件、模板、指令、服務、依賴註入、路由以及測試,此外,在相應的章節里還補充說明瞭譬如變化監測的核心Zones(第6章)、雙向綁定的原理(第7章)、RxJS(第9章)等關鍵內容;
第三部分則通過問捲調查系統來指引讀者進行Angular項目的實戰;第四部分主要是 Angular 延伸知識的講解,介紹了 ionic 框架(第 19 章)以及 Angular 的服務端渲染(第 20 章)相關技術。
√本書為谷歌開發者社區官方指定用書,由谷歌Angular技術開發團隊作序力薦。
√基於Angular 4系統全面介紹這一技術方方面面的書籍。
√本書作者團隊從Angular早期版本問世以來即投入生產實踐,積累豐富實戰經驗。
√首版問世後飽受好評,國內一線前端團隊及技術社區資深專家集體亮相盛讚。


目錄大綱


第一部分入門篇
1前端風雲2 
1.1故事的起點2 
1.2 AJAX王者歸來3 
1.3工具庫的流行3 
1.4百家爭鳴3 
1.5走進前端新時代4 
1.6小結6 
2 Angular簡介7 
2.1歷史回顧7 
2.1.1 AngularJS 1.x起源7 
2.1.2 AngularJS 1.x迭代之路8 
2.1.3初生的Angular 9 
2.1.4快速發展的Angular 10 
2.1.5 Angular 4和後續語義版本11 
2.1.6開發語言之選13 
2.2 Angular簡述14 
2.2.1核心概念14 
2.2.2平台簡介16 
2.2.3平台亮點18 
2.3小結19 
3 TypeScript入門20 
3.1 TypeScript概述20 
3.1.1概述20 
3.1.2安裝21 
3.2基本類型22 
3.2.1布爾類型22 
3.2.2數字類型22 
3.2.3字符串類型23
3.2.4數組類型23 
3.2.5元組類型23 
3.2.6枚舉類型23 
3.2.7任意值類型24 
3.2.8 null和undefined 24 
3.2.9 void類型25 
3.2.10 never類型26 
3.3聲明和解構26 
3.3.1 let聲明27 
3.3.2 const聲明28 
3.3.3解構28 
3.4函數30 
3.4.1函數定義30 
3.4.2可選參數30 
3.4.3默認參數31 
3.4.4剩餘參數32 
3.4.5函數重載32 
3.4.6箭頭函數33 
3.5類34 
3.5.1類的例子34 
3.5.2繼承與多態34 
3.5.3修飾符35 
3.5.4參數屬性37 
3.5.5靜態屬性37 
3.5.6抽像類38 
3.6模塊39 
3.6.1概述39 
3.6.2模塊導出方式39 
3.6.3模塊導入方式40 
3.6.4模塊的默認導出41 
3.6.5模塊設計原則42 
3.7接口44
3.7.1概述44 
3.7.2屬性類型接口44 
3.7.3函數類型接口45 
3.7.4可索引類型接口46 
3.7.5類類型接口46 
3.7.6接口擴展47 
3.8裝飾器48 
3.8.1概述48 
3.8 .2方法裝飾器49 
3.8.3類裝飾器50 
3.8.4參數裝飾器52 
3.8.5屬性裝飾器53 
3.8.6裝飾器組合53 
3.9泛型55 
3.10 TypeScript周邊56 
3.10.1編譯配置文件56 
3.10 .2聲明文件57 
3.10.3編碼工具58 
3.10.4展望未來59 
3.11小結59 
4快速入門60 
4.1 Hello World例子60 
4.1.1準備工作60 
4.1.2構建項目61 
4.2通訊錄例子66 
4.2.1背景介紹66 
4.2.2架構設計68 
4.3小結74 
第二部分深入篇
5 Angular架構總覽76 
5.1核心模塊介紹76 
5.1.1組件77
5.1.2模板81 
5.1.3指令83 
5.1.4服務84 
5.1.5依賴注入84 
5.1.6路由86 
5.2應用模塊89 
5.3源碼結構介紹92 
5.4小結93 
6組件94 
6.1概述94 
6.1.1模塊化介紹94 
6.1.2組件化標準96 
6.1.3 Angular的組件99 
6.2組件基礎100 
6.2.1創建組件的步驟100 
6.2.2組件的基礎構成101 
6.2.3組件與模塊108 
6.3組件交互113 
6.3.1組件的輸入、輸出屬性113 
6.3.2父組件向子組件傳遞數據114 
6.3.3子組件向父組件傳遞數據120 
6.3.4其他組件交互方式121 
6.4組件內容嵌入124 
6.5組件生命週期128 
6.5.1概述128 
6.5.2生命週期鉤子128 
6.6變化監測130 
6.6.1數據變化的源頭131 
6.6.2變動通知機制132 
6.6.3變化監測的響應處理134 
6.7擴展閱讀140
6.7.1元數據一覽表140 
6.7.2元數據說明141 
6.7.3深入理解Zone.js 150 
6.7.4不依賴Zone.js的Angular 154 
6.8小結155 
7模板156 
7.1模板語法概覽156 
7.2數據綁定158 
7.2.1概述158 
7.2.2插值160 
7.2.3模板表達式160 
7.2.4屬性綁定162 
7.2.5事件綁定165 
7.2.6雙向數據綁定168 
7.2.7輸入和輸出屬性169 
7.3內置指令170 
7.3.1 NgClass 170 
7.3.2 NgStyle 170 
7.3.3 NgIf 171 
7.3.4 NgSwitch 172 
7.3.5 NgFor 172 
7.4表單173 
7.4.1模板表單例子174 
7.4.2表單指令175 
7.4.3自定義表單樣式184 
7.4.4表單校驗186 
7.5管道189 
7.5.1管道介紹189 
7.5.2內置管道190 
7.5.3自定義管道196
7.5.4管道的變化監測198 
7.6擴展閱讀202 
7.6.1安全導航操作符202 
7.6.2雙向綁定的原理202 
7.7小結204 
8指令206 
8.1概述206 
8.1.1指令分類208 
8.1.2內置指令210 
8.2自定義屬性指令219 
8.2.1實現屬性指令219 
8.2.2為指令綁定輸入221 
8.2.3響應用戶操作223 
8.3自定義結構指令224 
8.3.1實現結構指令225 
8.3.2模板標籤與星號前綴227 
8.3.3 NgIf指令原理229 
8.4擴展閱讀231 
8.5小結235 
9服務與RxJS 237 
9.1 Angular服務237 
9.1.1概述237 
9.1.2使用場景238 
9.2 HTTP服務242 
9.2.1 HTT PModule 242 
9.2.2 HTT PClientModule 254 
9.3響應式編程262 
9.3.1概述262 
9.3.2 ReactiveX 264 
9.4 RxJS 266
9.4.1創建Observable對象266 
9.4.2使用RxJS處理複雜場景266 
9.4.3 RxJS和Promise的對比267 
9.4.4 “冷”模式下的Observable 268 
9.4.5 RxJS中的Operator 269 
9.4.6 Angular中的RxJS 273 
9.5小結277 
10依賴注入278 
10.1依賴注入介紹279 
10.2 Angular依賴注入282 
10.2.1概述282 
10.2.2在組件中註入服務285 
10.2.3在服務中註入服務287 
10.2.4在模塊中註入服務288 
10.2.5層級註入290 
10.2.6注入到派生組件295 
10.2.7限定方式的依賴注入297 
10.3 Provider 300 
10.3.1概述300 
10.3.2 Provider註冊方式302 
10.4擴展閱讀305 
10.5小結308 
11路由309 
11.1概述309 
11.2基本用法311 
11.2.1路由配置311 
11.2.2創建根路由模塊312
11.2.3添加RouterOutlet指令312 
11.3路由策略313 
11.3.1 HashLocationStrategy介紹314 
11.3.2 PathLocationStrategy介紹315 
11.4路由跳轉316 
11.4.1使用指令跳轉317 
11.4.2使用代碼跳轉319 
11.5路由參數321 
11.5. 1 Path參數321 
11.5.2 Query參數324 
11.5.3 Matrix參數326 
11.6子路由和附屬Outlet 326 
11.6.1子路由326 
11.6.2附屬Outlet 328 
11.7路由攔截330 
11.7.1激活攔截與反激活攔截330 
11.7 .2數據預加載攔截334 
11.8模塊的延遲加載337 
11.8.1延遲加載實現337 
11.8.2模塊預加載339 
11.8.3模塊加載攔截341 
11.9小結342 
12測試343 
12.1概述343 
12.2單元測試344 
12.2.1概述344 
12.2.2常用測試框架345 
12.2.3 Jasmine介紹345
12.2.4 Karma介紹350 
12.2.5 Karma結合Jasmine測試350 
12.3 Angular單元測試355 
12.3.1概述355 
12.3.2獨立單元測試358 
12.3.3測試工具集362 
12.4端到端測試370 
12.4.1概述370 
12.4 .2 Protractor介紹371 
12.5小結374 
第三部分實戰篇
13問卷調查系統簡介376 
13.1項目背景376 
13.2主要特性377 
13.2.1首頁和幫助頁378 
13.2.2問


作者介紹


廣發證券互聯網金融技術團隊,是早期擁抱Angular 的堅定踐行者。
作為全新一代的證券業IT 研發組織,團隊致力於用好的技術打造行業方案、支持業務創新。
我們熱愛開源技術、信奉敏捷方法、編寫優雅代碼、關注用戶體驗,我們喜歡互聯網工程師文化,我們在技術創新中尋找到樂趣。




相關書籍

Front-End Web Development: The Big Nerd Ranch Guide

作者 Chris Aquino Todd Gandee

2018-07-01

JavaScript in 24 Hours, Sams Teach Yourself (7th Edition)

作者 Phil Ballard

2018-07-01

SOA and Web Services Interface Design: Principles, Techniques, and Standards (Paperback)

作者 James Bean

2018-07-01