Angular是什么 ?
AngularJS是一款針對動態(tài)web應(yīng)用的結(jié)構(gòu)框架. 它可以讓像使用模板語言使用HTML, 并且可以擴展HTML的語法來明確簡潔的表示應(yīng)用組件. Angular的數(shù)據(jù)綁定機制和依賴注入機制排除了許多原本你不得不寫的代碼. 它作用于瀏覽端, 使得它成為任何服務(wù)端技術(shù)的良好伙伴.
Angular是為了彌補HTML在構(gòu)建應(yīng)用上的不足而設(shè)計的. 對于靜態(tài)文檔來說, HTML是很不錯的聲明式語言, 但是要構(gòu)建web應(yīng)用, 它卻有些乏力. 所以我不得不做一些工作來讓瀏覽器做我想要的事.
通常, 我們通過以下方式解決動態(tài)應(yīng)用與靜態(tài)網(wǎng)頁之前的不匹配:
庫 --- 一個函數(shù)集合, 我們用它來編寫我們的web應(yīng)用. 我們自己編碼作為主體, 然后我們在合適的時機調(diào)用庫, 例如jQuery.
框架 --- web應(yīng)用的一種特定實現(xiàn), 我們可以在它上面編碼實現(xiàn)具體的邏輯. 在這里, 框架起主導作用, 它可以在應(yīng)用的具體邏輯中調(diào)用你的代碼, 例如: durandal, ember等.
Angular采用了另一種方式. 它試圖通過創(chuàng)建新的HTML結(jié)構(gòu)來彌補HMTL在構(gòu)建應(yīng)用上的不足. Angular通過我們稱之為指令的結(jié)構(gòu), 使瀏覽器可以解析新的語法. 包括:
通過
{{}}
通過數(shù)據(jù)綁定通過DOM控制結(jié)構(gòu)實現(xiàn)迭代或隱藏DOM片段
支持表單和表單驗證
能將代碼關(guān)聯(lián)到DOM元素上
將HTML組成為可重用的組件