angularjs到底是什嗎?angularjs都可以做什嗎?

來源:互聯網
上載者:User
本篇文章主要的向大家介紹了關於angularjs的介紹和作用。希望大家認真閱讀,現在就讓我們一起來看這篇關於angularjs的介紹和作用的文章吧

首先我們要瞭解angularjs到底是什嗎?

AngularJs(後面就簡稱ng了)是一個用於設計動態web應用的結構架構。

首先,它是一個架構,不是類庫,是像EXT一樣提供一整套方案用於設計web應用。它不僅僅是一個JavaScript架構,因為它的核心其實是對HTML標籤的增強。何為HTML標籤增強?其實就是使你能夠用標籤完成一部分頁面邏輯,具體方式就是通過自訂標籤、自訂屬性等,這些HTML原生沒有的標籤/屬性在ng中有一個名字:指令(directive)。後面會詳細介紹。那麼,什麼又是動態web應用呢?與傳統web系統相區別,web應用能為使用者提供豐富的操作,能夠隨使用者操作不斷更新視圖而不進行url跳轉。ng官方也聲明它更適用於開發CRUD應用,即資料操作比較多的應用,而非是遊戲或影像處理類應用。為了實現這些,ng引入了一些非常棒的特性,包括模板機制、資料繫結、模組、指令、依賴注入、路由。通過資料與模板的綁定,能夠讓我們擺脫繁瑣的DOM操作,而將注意力集中在商務邏輯上。 

另外一個疑問,ng是MVC架構嗎?還是MVVM架構?官網有提到ng的設計採用了MVC的基本思想,而又不完全是MVC,因為在書寫代碼時我們確實是在用ng-controller這個指令(起碼從名字上看,是MVC吧),但這個controller處理的業務基本上都是與view進行互動,這麼看來又很接近MVVM。讓我們把目光移到官網那個非醒目的title上:“AngularJS — Superheroic JavaScript MVW Framework”。

我們再來看看angularjs可以做什嗎?

1.完全使用JavaScript編寫的用戶端技術。同其他曆史悠久的Web技術(HTML、CSS和JavaScript)配合使用,使Web應用開發比以往更簡單、更快捷。

2.AngularJS主要用於構建單頁面Web應用。它通過增加開發人員和常見Web應用開發工作單位之間的抽象層級,使構建互動現代Web應用變得更加簡單。

3.AngularJS的Team Dev將其描述為一種構建動態Web應用的結構化架構。

4.AngularJS使開發Web應用變得非常簡單,同時也降低了構建複雜應用的難度。它提供了開發人員在現代Web應用中經常要用到的一系列進階功能,例如:

  • 解耦應用邏輯、資料模型和視圖;

  • Ajax服務;

  • 依賴注入;

  • 瀏覽曆史(使書籤和前進、後退按鈕能夠像在普通Web應用中一樣工作);

  • 測試;

AngularJS是一個MV*架構,最適於開發用戶端的單頁面應用。它不是個功能庫,而是用來開發動態網頁的架構。它專註於擴充HTML的功能,提供動態資料綁定(data binding),而且它能跟其它架構(如jQuery)合作融洽。

如果你要開發的是單頁應用,AngularJS就是你的上上之選。Gmail、Google Docs、Twitter和Facebook這樣的應用,都很能發揮AngularJS的長處。但是像遊戲開發之類對DOM進行大量操縱、又或者單純需要 極高運行速度的應用,就不是AngularJS的用武之地了。(想看更多angularjs的知識,推薦到topic.alibabacloud.comAngularJS學習手冊欄目學習)

最後,我們對angularjs做個簡單的介紹:

AngularJS 重新定義了前端應用的開發方式。面對HTML和JavaScript之間的界線,它非但不畏縮不前,反而正面出擊,提出了有效解決方案。很多前端應用的開發架構,比如Backbone、EmberJS等,都要求開發人員繼承此架構特有的一些JavaScript對象。這種方式有其長處,但它不必要地汙染了開發人員自己代碼的對象空間,還要求開發人員去瞭解記憶體裡那些抽象對象。儘管如此我們還是接受了這種方式,因為網路最初的設計無法提供 我們今天所需的互動性,於是我們需要架構,來幫我們填補JavaScript和HTML之間的鴻溝。而且有了它,你不用再“直接”操控DOM,只要給你的DOM註上metadata(即AngularJS裡的directive們),然後讓AngularJS來幫你操縱DOM。同時,AngularJS不依賴(也不妨礙)任何其他的架構。你甚至可以基於其它的架構來開發AngularJS應用。

以上就是本篇關於angularjs的介紹和angularjs的一些作用的文章了(想知道更多angularjs的知識,就到topic.alibabacloud.comAngularJS使用手冊欄目學習更多)。有問題的可以在下方留言提問。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.