AngularJS

维基百科,自由的百科全书
跳转至: 导航搜索
AngularJS
AngularJS logo
開發者 Google Inc.和社区。
初始版本 2009年  (2009)
穩定版本 1.2.23 / 2014年8月22日;32天前 (2014-08-22)
開發狀態 活跃
编程语言 JavaScript
操作系统 跨平台
文件大小 98.4KB 产品
718KB 开发
类型 JavaScript函式庫
许可协议 MIT许可证
網站 www.angularjs.org

AngularJS是一款开源 JavaScript函式庫,由Google维护,用來協助單一頁面應用程式運行的。它的目标是透過MVC模式 (MVC) 功能增强基于浏览器的应用,使开发和测试变得更加容易。

函式庫讀取包含附加自定義(標籤屬性)的HTML, 遵從這些自定義屬性中的指令,並將頁面中的輸入或輸出與由JavaScript變量表示的模型綁定起來。這些JavaScript變量的值可以手工設置,或者從靜態或動態JSON資源中獲取。

Angular的哲學[编辑]

AngularJS是建立在這樣的信念上的:即声明式编程應該用於構建用戶界面以及編寫軟件構建,而指令式編程非常適合來表示業務邏輯[1] 框架採用並擴展了傳統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和一些谷歌员工Igor Minár和Vojta Jína等继续开发和维护这个库。

发行[编辑]

发行1.0.x是现在稳定版本, 在小的版本中上(例如 1.1.x – 1.1.y),1.1.x可能含有breaking changes .[2]

和Backbone.js的比较[编辑]

Data-binding数据绑定[3]
REST [4]
Templating模板 [3]

参照[编辑]

  1. ^ What Is Angular?. [12 February 2013]. 
  2. ^ AngularJS 1.0 -> 1.2 Roadmap. blog.angularjs.org. July 26, 2012 [2013-04-27]. 
  3. ^ 3.0 3.1 Backbonejs vs Angularjs: Demystifying the myths. [13 February 2013]. 
  4. ^ Javascript Frameworks And Data Binding. [13 February 2013]. 

继续阅读[编辑]

外部链接[编辑]