AngularJs的理解

來源:互聯網
上載者:User

標籤:

隨著時代的不斷進步,各種各樣的開發理念與開發架構不斷的提出與發展,目前來說,除了遊戲,QQ,office這類軟體之外,新出的一些軟體應用開始出現兩個方向,一個是以web為主的webApp,一個是以移動端為主的移動APP,且,現有也有一種聲音認為webapp早晚會取代移動端原生APP,從而一統電腦軟體的應用方式,暫且不論這種說法是否會成為現實,webapp的火爆可見一斑。

下面是我對angularJS的一些見解:

Angular 是一款主旋律的 MVVM 架構,架構和傳統的庫不同: 類庫 是一些函數的集合,它能協助你寫WEB應用。起主導作用的是你的代碼,由你來決定何時使用類庫。類庫有:jQuery等 架構 是一種特殊的、已經實現了的WEB應用,你只需要對它填充具體的商務邏輯。這裡架構是起主導作用的,由它來根據具體的應用邏輯來調用你的代碼。架構有:knockout等。 Angular.js 主要用於構建單頁面web應用,提供了諸如:

1.解耦應用邏輯、資料模型和視圖

2.AJax服務

3.依賴注入

4.瀏覽曆史

5.測試和更多功能

簡要解釋 Angularjs 就是一個可以給 HTML 加上互動性的用戶端 js 架構。我們需要明白如何讓 HTML 適時調用 js 。

在 Angular 中,我們通過指令(Directives)給 HTML 加上行為。指令是一個在HTML標籤上的標記,用來告訴 Angular 運行或者引用哪些js代碼。為指令賦值函數名,即可運行。但這不是很好的方式,我們只需明白這就是指令如何綁定行為的

 

AngularJs是什嗎?

Angular是一個由Goodle支援的webApp前端MVC架構。

Angularjs包括什嗎?

從angularjs的官方文檔看到,它主要包括以下幾個概念:

Template--模板

Directive--指令

Filter--過濾器

Controller--控制器

Scope--範圍

Service--服務

Module--模組

Template directive filter這三個主要是與視圖有關的,controller scope service這兩個主要是與控制器有關,module用於結構化項目。

注意:就像上面看到的那樣,在AngularJS中,沒有找到有關Model層的東西!

下面是對各個概念的理解以及如何應用的想法。

  • Directive是一種屬性,寫在HTML標籤當中,使用者標識出模板中一些特殊的東西。比如用於顯示“部分模板”的<div ng-view></div>。
  • Filter根據官網的解釋,是用於控制視圖中的元素如何顯示,或者說顯示成什麼樣的。
  • Template是視圖層的具體載體,在Template中可以寫一些輔助的邏輯,如ng-if等
  • Controller是控制器,根據官方文檔的建議,不應該在Controller中寫太複雜的東東,在控制器中唯寫有關商務邏輯的就可以了。
  • Scope,這個東西在看控制器的介紹的時候看到,在個人理解來看,應該是主要用於進行視圖與控制器的資料操作,或者認為是用於打通視圖層與控制器的一個東東。
  • 由於文檔中寫到,不建議在控制器中寫太複雜的邏輯,所以我們應該把所有的可供複用的邏輯寫到Service(服務)當中。然後我們可以利用AngularJS架構本身的DI(依賴注入)功能將Service注入到具體的控制器中。
  • Module,這個東西類似Java的類庫的概念,我們寫的所有的控制器、過濾器、服務等都得加到Module中,沒什麼好說的~

這裡要注意一個問題——模型。

按照個人的理解,不論AngularJS再怎樣,其資料的直接來源還是伺服器,而伺服器傳資料的話,現在比較流行使用JSON格式,所以,就模型層來說,我們只要利用Service從伺服器中擷取資料,然後將其解析給在Controller中對應的Scope就行了。剩下的就是AngularJS內部處理,將資料自動綁定到前台了~

以上就是我對angularJs 的一些見解,希望可以協助需要學習的朋友們。

 

AngularJs的理解

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.