Angular2筆記

資料

其它


注:以下文檔均較舊,不建議再看,建議去angular官網(wǎng)及中文網(wǎng)去看

Angular2


Angular 2 是一個用 HTML 和 JavaScript 構建客戶端應用的框架。

Angular1中,bootstrap是圍繞DOM元素展開的;而Angular2中,bootstrap是圍繞組件展開的。

以組件而非DOM為核心,意味著Angular2在內(nèi)核隔離了對DOM的依賴,即DOM只是作為一種可選的渲染引擎存在。

Paste_Image.png

Angular2中的八個主要構造塊

Paste_Image.png

我們常用帶 Angular 擴展語法的 HTML 寫 *模板 *,用 *組件 *類管理這些模板,用 *服務 添加應用邏輯,用根組件完成 Angular 啟動 *。

模板、元數(shù)據(jù)和組件共同描繪出一個視圖

  1. Module 模塊
    Angular應用由模塊組成,模塊能導出組件,服務,函數(shù),值等供其它模塊使用
  2. Component 組件
    directives數(shù)組包含組件模板依賴的組件或指令
    providers數(shù)組包含組件依賴的服務
  3. Template 模板
  4. Metadata 元數(shù)據(jù)
  5. Data Binding 數(shù)據(jù)綁定
  6. Directive 指令
  7. Service 服務
  8. Dependency Injection 依賴注入

Angular2例子:

//從模塊庫引入類型定義
import {Component} from "angular2/core";
import {bootstrap} from "angular2/platform/browser";

//組件定義
@Component({
    selector:"my-app",
    template:"<h1>Hello,Annotation</h1>"
})
class EzApp{}       

//渲染組件
bootstrap(EzApp);

Angular2運行時生態(tài)結構


Paste_Image.png
  • angular2 polyfills: 為ES5瀏覽器提供ES6特性支持,比如Promise等。
  • systemjs: 通用模塊加載器,支持AMD、CommonJS、ES6等各種格式的JS模塊加載。
  • typescript transpiler: typescript轉(zhuǎn)換器

Angular2中的注解


ES6規(guī)范中并沒有注解和其它裝飾器,Angular2中的注解其實是利用了轉(zhuǎn)碼器(Typescript/traceur/babel)的注解特性,注解可以看作是轉(zhuǎn)換碼器層面的語法糖。

Paste_Image.png

Angular2中的依賴注入


Angular2中的指令


指令是對HTML進行擴展的基本手段

三種指令(注:組件也是一種指令):

  • 組件:一種帶有模板的指令;使用component來裝飾組件類
  • 屬性指令:改變元素的外觀或行為,如NgClass,NgStyle;使用Directive來裝飾指令類
  • 結構指令:向DOM中添加或刪除元素,如NgIf,NgFor;使用Directive來裝飾指令類

示例:


Paste_Image.png

Angular2中的數(shù)據(jù)綁定

--

Paste_Image.png

Angular2中的服務


服務無處不在

其它


Angular2中的管道

管道即模板中對數(shù)據(jù)的變換機制

常用預置管道:

  • DecimalPipe: | number:'2.2-2'
  • DatePipe: | date:'yyMMdd'
  • JsonPipe: | json 基于JSON.stringify(), 主要用于調(diào)試
  • PercentPipe: | percent:'1.2-3'
  • SlicePipe: | slice:1:4
  • UpperCasePipe: | uppercase
  • LowerCasePipe: | lowercase

自定義管道:

Angular2 API for Typescript


按類型分

  • Directive: 基本都在@angular/common包中
  • Decorator: core中的Component, Directive, Injectable, Pipe; router中的Routes
  • Class
  • Inteface
  • Function
  • Enum
  • Const

按包分

  • @angular/common
  • @angular/compiler
  • @angular/core
  • @angular/http
  • @angular/platform-browser
  • @angular/platform-browser/dynamic
  • @angular/platform-server
  • @angular/router

Angular2 Cli


資料:

環(huán)境安裝與配置


npm install -g typescript typings
npm install -g angular-cli

cli操作


參閱

angular2-material相關


  • 安裝相關組件
npm install --save @angular2-material/{core,button,card}
  • 配置
    angular-cli-build.js中增加
'@angular2-material/**/*'
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 史上最簡單Angular2教程,大叔都學會了 作者:王芃 wpcfan@gmail.com 第一節(jié):初識Angul...
    接灰的電子產(chǎn)品閱讀 59,104評論 76 248
  • 文章意在記錄自己在學習angular2中的一些收獲,請帶著質(zhì)疑的眼光去看文章。由于本人也是學習階段,語言各方面的難...
    若雪兮閱讀 2,275評論 0 2
  • 鏡中花,水中月,永遠等不到那個你愛的人 面對生活,走進內(nèi)心,才會發(fā)現(xiàn)自己需要的最終就在身邊
    DairyAngel閱讀 871評論 0 49
  • 我好像看完了一本書,又好像看完了N本書。 秋大叔在這本書里主打思維框架建設,序篇就介紹了N種讀書方法,不禁讓你開始...
    瀚文ILoveU閱讀 248評論 0 0
  • 十九大報告中首次提出要提倡極簡生活方式,什么是極簡生活方式呢?我的理解是所謂極簡生活方式就是要最大限度利用...
    程雅渝閱讀 1,295評論 0 0

友情鏈接更多精彩內(nèi)容