AngularJS
| 開發者 | Google Inc.和社群。 |
|---|---|
| 初始版本 | 2010年10月20日[1] |
| 穩定版本 | 2.4.0(2016年12月20日[2]) |
| 開發狀態 | 活躍 |
| 程式語言 | JavaScript |
| 作業系統 | 跨平台, see 舊版瀏覽器支援 |
| 檔案大小 | 144 KB 產品 1 MB 開發 |
| 類型 | JavaScript函數庫 |
| 許可協定 | MIT許可證 |
| 網站 | www |
| 倉庫 | github |
AngularJS是一款開源JavaScript函數庫,由Google維護,用來協助單一頁面應用程式運行的。它的目標是透過MVC模式(MVC)功能增強基於瀏覽器的應用,使開發和測試變得更加容易。
函數庫讀取包含附加自定義(標籤屬性)的HTML,遵從這些自定義屬性中的指令,並將頁面中的輸入或輸出與由JavaScript變量表示的模型綁定起來。這些JavaScript變量的值可以手工設置,或者從靜態或動態JSON資源中獲取。
目錄
Angular的哲學[編輯]
AngularJS是建立在這樣的信念上的:即聲明式編程應該用於構建用戶介面以及編寫軟件構建,而指令式編程非常適合來表示業務邏輯。[3]框架採用並擴展了傳統HTML,通過雙向的數據綁定來適應動態內容,雙向的數據綁定允許模型和視圖之間的自動同步。因此,AngularJS使得對DOM的操作不再重要並提升了可測試性。
設計目標:
- 將應用邏輯與對DOM的操作解耦。這會提高代碼的可測試性。
- 將應用程式的測試看的跟應用程式的編寫一樣重要。代碼的構成方式對測試的難度有巨大的影響。
- 將應用程式的客戶端與伺服器端解耦。這允許客戶端和伺服器端的開發可以齊頭並進,並且讓雙方的復用成為可能。
- 指導開發者完成構建應用程式的整個歷程:從用戶介面的設計,到編寫業務邏輯,再到測試。
Angular遵循軟件工程的MVC模式,並鼓勵展現,數據,和邏輯組件之間的松耦合。通過依賴注入(dependency injection),Angular為客戶端的Web應用帶來了傳統服務端的服務,例如獨立於視圖的控制。因此,後端減少了許多負擔,產生了更輕的Web應用。
Angular主要的指令(自訂標籤)[編輯]
雙向數據綁定[編輯]
Angular在呈現和數據中間,可以簡單建立雙向的數據綁定。一旦建立雙向綁定,使用者輸入,會由Angular自動傳到一個變數中,再自動讀到所有綁到它的內容,更新它。效果上就是立即的數據同步。在程式碼中修改變數,也會直接反應到呈現的外觀上。不僅內容可以雙向綁定,其他諸如類別、寬度、高度等等,都可以和變數與使用者的輸入,綁定起來。
開發歷史[編輯]
AngularJS在2009年由Miško Hevery和Adam Abrons開發,作為線上JSON儲存服務的軟件,它是以兆位元來計價,便於成為企業的應用服務。當初以"GetAngular.com"註冊網域,但由於只有少量的註冊用戶,在兩人決定放棄這個商業想法前,就把Angular開源了。
Abrons後來離開了這個計劃,但在Google工作的Hevery和一些Google員工如Igor Minár和Vojta Jína等則繼續開發維護此函數庫。
發行[編輯]
目前有兩個正在維護的穩定版本:1.3.x和1.4.x,更新頻率約為每周一次或每兩周一次. [4]
舊版瀏覽器支援[編輯]
AngularJS在1.2之後的版本不再支援Internet Explorer 6和7.[5]在1.3之後的版本停止對Internet Explorer 8的支援.[6]
和Backbone.js的比較[編輯]
- Data-binding數據繫結[7]
- REST [8]
- Templating模板[7]
依賴注入
參照[編輯]
- ^ Earliest known releases
- ^ Release 2.4.0. GitHub. [2016-12-31].
- ^ What Is Angular?. [12 February 2013].
- ^ angular.js CHANGELOG. [2015-06-18].
- ^ AngularJS: Developer Guide: Internet Explorer Compatibility. Google. [2014-10-12].
- ^ Minar, Igor. AngularJS 1.3: a new release approaches. AngularJS Blog. [2014-10-12].
- ^ 7.0 7.1 Backbonejs vs Angularjs: Demystifying the myths. [13 February 2013].
- ^ Javascript Frameworks And Data Binding. [13 February 2013].
繼續閱讀[編輯]
- Green, Brad; Seshadri, Shyam. AngularJS 1st. O'Reilly Media. March 22, 2013: 150. ISBN 978-1449344856.
外部連結[編輯]
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||