經歷了6個RC版本之後,今天Angular釋出了4.0.0版本,這次釋出是主版本的更新(遵循採用語義版本),並且在大多數情況下,Angular4.0版本是向後相容Angular2.0的。
那麼,這次Angular4版本主要更新了什麼呢?
- 體積更小,速度更快
Angular應用程式變得更小更快,並且在未來幾個月將進一步改進框架。 - 更好的模板引擎
改進了AoT,將生成的程式碼的大小減少約60%。如果模板越複雜,那麼優化的程式碼也會越多。(譯者注:當然,這對於使用者來說,完全是透明的,public api 沒有發生變化。) - 動畫模組改進
將動畫從@angular/core中分離開來,區分核心模組與動畫模組,精簡核心模組體積。
再來看看Angular4給我們帶來了哪些新的特性。
-
增強 ngIf 和 ngFor 語法
模板繫結語法進行了幾個有用的更改。現在可以使用if / else樣式語法,並分配區域性變數,例如在展開observable時。<div *ngIf="userList | async as users; else loading"> <user-profile *ngFor="let user of users; count as count" [user]="user"> </user-profile> <div>{{count}} total users</div> </div> <ng-template #loading>Loading...</ng-template>複製程式碼
-
服務端渲染(Angular Universal)
原先的Angular Universal是社群人員維護的,後被angular官方採用。目前在4.0.0版本中,將大部分的程式碼整合在@angular/platform-server模組中。為大家帶來更好的服務端渲染體驗,更簡單Api呼叫。請參見基於Angular4的服務端渲染demo: github.com/z827101859/… 。之後,官方會為大家帶來更好更全面的例子。 - TypeScript 2.1 和 2.2 的相容
Angular已更新為更新版本的TypeScript,提高了ngc的速度,並且有更好的型別檢查機制。 - 模板的Source Maps
當模板中的某些內容發生錯誤時,Angular會生成源對映,從而為原始模板提供有意義的上下文。
更多內容,請參見Angular官方原文:
angularjs.blogspot.hk/2017/03/ang…
最後,給想要學習Angular的同學一個Angular4的模板專案,專案結合webpack進行打包,包含了當前Angular框架中的許多新特性,喜歡的同學不妨開始從這裡學習:github.com/ntesmail/an…
- git clone git@github.com:ntesmail/angular-webpack-template.git
- npm install (由於你懂的原因,這一步你可能會安裝失敗,這時候大家只能翻牆咯)
- npm run start
轉載請申明@sweetyx