Angular JS 介紹

簡介

AngularJS 是一款來自 Google 的前端 JavaScript 框架,也是 SPA(single-page-application,單頁應用)框架。AngularJS 框架的體積非常小,但是設計理念和功能卻非常強大,極大地簡化前端開發的負擔,它快速成爲了 JavaScript 的主流框架,幫助開發者從事 web 開發。


SPA 和 MVC

SPA:單頁面應用是指用戶通過瀏覽器加載獨立的 HTML 頁面並且無需離開此導航頁面。對用戶操作來說,一旦加載和執行單個頁面應用程序通常會有更多的響應,這就需要返回到後端 Web 服務器,而單頁面應用爲用戶提供了一個更接近本地移動或桌面應用程序的體驗,這就是單頁面應用的優勢所在。

MVC:模型(model)-視圖(view)-控制器(controller)的縮寫,一種軟件設計典範,用一種業務邏輯、數據、界面顯示分離的方法組織代碼,將業務邏輯聚集到一個部件裏面,在改進和個性化定製界面及用戶交互的同時,不需要重新編寫業務邏輯。MVC 被獨特的發展起來用於映射傳統的輸入、處理和輸出功能在一個邏輯的圖形化用戶界面的結構中。


基本概念

針對客戶端應用開發的 AngularJS 吸收了傳統的 MVC 基本原則,但並不只是傳統意義上的 MVC,更接近於 MVVM(Model-View-ViewModel)。

Model:是應用中的數據,一般是簡單的 JavaScript 對象。

ViewModel:是一個用來提供特別數據和方法從而維護指定 View 的對象。

View:是 AngularJS 解析後渲染和綁定後生成的 HTML,它能幫助您創建 web 應用的架構。

$scope(作用域):是 AngularJS 中的一個 JavaScript 對象,這個對象使用簡單的 API 來偵測和廣播狀態變化。在這裏就是要將域模型暴露給視圖(模板),只需把屬性設置給$scope 實例,就可以在模板渲染時得到這個值。

$scope 也可以針對特定的視圖來擴展數據和特定的功能,只要在$scope 實例上定義一些函數就能將特定的 UI 邏輯暴露給模板。

Controller(控制器):控制器的首要任務就是初始化$scope 對象。在實踐中,初始化的邏輯由下面的這些責任組成:提供模型初始化的值;擴展$scope UI 行爲(方法)。

控制器都是普通的 JavaScript 函數,它們並不必去繼承一些框架特定提供的類,也不必去調用任何特定的 AngularJS API 才能去正確地執行它們的任務。

Directive(指令):指令可以用來創建自定義的標籤,它們可以用來裝飾元素或者操作 DOM 屬性,也可以作爲標籤、屬性、註釋和類名使用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章