AngulaJS是款非常優(yōu)秀的JasSetpsn結(jié)構(gòu)化框架,可以用來(lái)構(gòu)建單頁(yè)面應(yīng)用程序,2009年,AngularJS由Misko Hevery等人創(chuàng)建,后來(lái)被Google收購(gòu),該技術(shù)已經(jīng)被用于Coogle旗下的多款產(chǎn)品開(kāi)發(fā)當(dāng)中。開(kāi)發(fā)人員不僅可以使用和擴(kuò)展HTML語(yǔ)言的特性。而且可以更清晰、簡(jiǎn)潔地編寫(xiě)應(yīng)用程序,的組件。這些程序?qū)W可以在瀏覽器中運(yùn)行,因此AngularJS成為任意服務(wù)器技術(shù)的理想合作伙伴。
AngulaJS有很多特性,包括模型視圖、自動(dòng)化雙向數(shù)據(jù)綁定、模板、指令、服務(wù)、依賴注人、路由等,具體介紹如下。
1.模型視圖: Angulils 并沒(méi)有在傳統(tǒng)意義上實(shí)現(xiàn)MVC.而是更接近于MWVM(Model-View- ViewMode),其中ViewModel被稱為模型視圖。
2.自動(dòng)化雙向數(shù)據(jù)綁定:模型和視圖組件之間的數(shù)據(jù)自動(dòng)同步。
3.模板:在AngularlS中,模板相當(dāng)于HTML文件被瀏覽器解析到DOM中,AngularJS遍歷這些DOM;也就是說(shuō),AuguarJS把模板當(dāng)作DOM來(lái)操作,去生成一些指令來(lái)完成對(duì)視圖的數(shù)據(jù)綁定。
4.指令:指令是關(guān)于DOM元素的標(biāo)記(如元素名、屬性、CSS等),使元素?fù)碛刑囟ǖ男袨?。這些可以被用來(lái)創(chuàng)建作為自定義部件的自定義HTML標(biāo)簽。AngularJS 設(shè)有內(nèi)置指令,如ngBind、ngModel等。
5.服務(wù):AngularJS中服務(wù)的概念類似于后端開(kāi)發(fā)的“服務(wù)”,是對(duì)公共代碼的抽象,例如多個(gè)控制器中出現(xiàn)了相似的代碼,開(kāi)發(fā)人員就可以把這些相似的代碼提取出來(lái)封裝成一個(gè)服務(wù)。AngularJS不僅提供了自定義服務(wù)的方法.還配有多個(gè)內(nèi)置服務(wù),例如$http可以作為一個(gè) XMLHttpRequest請(qǐng)求。這些單例對(duì)象在應(yīng)用程序中只實(shí)例化一次。
6.依賴注入:AngularJS有一個(gè)內(nèi)置的依賴注人子系統(tǒng),使開(kāi)發(fā)人員能夠輕松對(duì)組件進(jìn)行測(cè)試的關(guān)鍵所在。
7.路由:通過(guò)路由可以實(shí)現(xiàn)視圖的切換。
在實(shí)際開(kāi)發(fā)中,AngularJS具有很多優(yōu)點(diǎn),具體如下。
●AngularJS是供一個(gè)非常簡(jiǎn)潔的方式來(lái)創(chuàng)建單頁(yè)應(yīng)用。
●AngularJS在HIMIL中提供數(shù)據(jù)師定功能,從而給用戶提供豐富的體險(xiǎn)。
●AngularJS代碼可進(jìn)行單元測(cè)試。
●利用數(shù)據(jù)綁定和依賴注入,指令式編程非常適合來(lái)表示業(yè)務(wù)邏輯,讓前端開(kāi)發(fā)人員不用再寫(xiě)大量的DOM操作代碼。
●在AngularJS中,視圖都是純HTML頁(yè)面,可以使用JavaScript編寫(xiě)控制器做業(yè)務(wù)處理。
●AngularJS應(yīng)用程序可以在所有主流的瀏覽器和智能移動(dòng)設(shè)備(包括Android和iOs系統(tǒng)的手機(jī)或者平板電腦)上運(yùn)行。
在AngularJS+ionic十Cordova的混合App開(kāi)發(fā)模式中,主要應(yīng)用的框架為ionic,但是ionic使用了AngularJS的基本語(yǔ)法,所以ionic的學(xué)習(xí)需要以AngularJS作為基礎(chǔ),這是本書(shū)在講解ionic之前講解AngularJS的原因。
猜你喜歡:AngularJS 中指令如何使用?
JSP的九大內(nèi)置對(duì)象是什么?【Java面試題】
如何測(cè)試JSTL是否安裝成功?
黑馬程序員HTML&JS+前端培訓(xùn)課程