AngularJS 最常用的功能匯總
AngularJS通過為開發(fā)者呈現(xiàn)一個(gè)更高層次的抽象來(lái)簡(jiǎn)化應(yīng)用的開發(fā)。如同其他的抽象技術(shù)一樣,這也會(huì)損失一部分靈活性。換句話說(shuō),并不是所有的應(yīng)用都適合用AngularJS來(lái)做。AngularJS主要考慮的是構(gòu)建CRUD應(yīng)用。幸運(yùn)的是,至少90%的WEB應(yīng)用都是CRUD應(yīng)用。但是要了解什么適合用AngularJS構(gòu)建,就得了解什么不適合用AngularJS構(gòu)建。
如游戲,圖形界面編輯器,這種DOM操作很頻繁也很復(fù)雜的應(yīng)用,和CRUD應(yīng)用就有很大的不同,它們不適合用AngularJS來(lái)構(gòu)建。像這種情況用一些更輕量、簡(jiǎn)單的技術(shù)如jQuery可能會(huì)更好。
第一 迭代輸出之ng-repeat標(biāo)簽
ng-repeat讓table ul ol等標(biāo)簽和js里的數(shù)組完美結(jié)合
<ul> <li ng-repeat="person in persons"> {{person.name}} is {{person.age}} years old. </li> </ul>
你甚至可以指定輸出的順序:
<li ng-repeat="person in persons | orderBy:'name'">
第二 動(dòng)態(tài)綁定之ng-model標(biāo)簽
任何有用戶輸入,只要是有值的html標(biāo)簽,都可以動(dòng)態(tài)綁定js中的變量,而且是動(dòng)態(tài)綁定。
<input type="text" ng-model='password'>
對(duì)于綁定的變量,你可以使用{{}} 直接引用
<span>you input password is {{password}}</span>
如果你熟悉fiter,你可以很容易的按你的需要格式輸出
<span>{{1288323623006 | date:'yyyy-MM-dd HH:mm:ss Z'}}</span>
第三 綁定點(diǎn)擊事件之ng-click事件
使用ng-click你可以很容易的為一個(gè)標(biāo)簽綁定點(diǎn)擊事件。
<button ng-click="pressMe()"/>
當(dāng)然前提是你要在$scope域中定義的自己的pressMe方法。
和傳統(tǒng)的onclick方法不同,你甚至可以為ng-click方法傳遞一個(gè)對(duì)象,就像這樣:
<ul> <li ng-repeat="person in persons"> <button ng-click="printf(person)"/> </li> </ul>
當(dāng)然還有ng-dblclick標(biāo)簽
第四 分支語(yǔ)句之ng-switch on、ng-if/ng-show/ng-hide/ng-disabled標(biāo)簽
分支語(yǔ)句讓你在界面上都可以寫邏輯判斷。
<ul> <li ng-repeat="person in persons"> <span ng-switch on="person.sex"> <span ng-switch-when="1">you are a boy</span> <span ng-switch-when="2">you are a girl</span> </span> <span ng-if="person.sex==1">you may be a father</span> <span ng-show="person.sex==2">you may be a mother</span> <span> please input your baby's name:<input type="text" ng-disabled="!person.hasBaby"/> </span> <span> </li> </ul>
第五 校驗(yàn)語(yǔ)法之ng-trim ng-minlength ng-maxlength required ng-pattern 等標(biāo)簽
表單中的輸入框,你可以使用上面的標(biāo)簽來(lái)實(shí)現(xiàn)對(duì)用戶輸入的校驗(yàn)。
從字面意思上你已經(jīng)知道了它們的意思。
<form name="yourForm"> <input type="text" name="inputText" required ng-trim="true" ng-model="userNum" ng-pattern="/^[0-9]*[1-9][0-9]*$/" ng-maxlength="6" maxlength="6"/> </form>
你可以通過 $scope.yourForm.inputText.$error.required 來(lái)判斷輸入框是否為空
你可以通過 $scope.yourForm.inputText.$invalid 來(lái)判斷輸入的內(nèi)容是否滿足ng-pattern,ng-maxlength,maxlength
你通過$scope.userNum獲得的輸入內(nèi)容是去掉前后空白的,因?yàn)閚g-trim的存在。
第六 下拉框之ng-options標(biāo)簽
ng-options是為下拉框?qū)iT打造的標(biāo)簽。
<select ng-model="yourSelected" ng-options="person.id as person.name in persons"></select>
下拉框中顯示的是person.name,當(dāng)你選中其中一個(gè)的時(shí)候,你可以通過yourSelected得到你選中的person.id.
第七 控制css之ng-style標(biāo)簽
ng-style幫你輕松控制你的css屬性
<span ng-style="myColor">your color</span>
你可以通過給myColor賦值的形式來(lái)改變你想要的效果,就像這樣:
$scope.myColor={color:'blue'}; $scope.myColor={cursor: 'pointer',color:'blue'};
第八 異步請(qǐng)求之$http對(duì)象。
AngularJS 提供了一個(gè)類似jquery的$.ajax的對(duì)象,用于異步請(qǐng)求。
在AngularJS中對(duì)異步操作是推崇至極的,所以$http的操作都是異步的不像jquery.ajax里還提供了async參數(shù)。
$http({method : 'POST',params : { id:123}, data:{name:'john',age:27}, url : "/mypath"}) .success(function(response, status, headers, config){ //do anything what you want; }) .error(function(response, status, headers, config){ //do anything what you want; });
如果你是POST請(qǐng)求,params里的數(shù)據(jù)會(huì)幫你拼到url后面,data里的數(shù)據(jù)會(huì)放到請(qǐng)求體中。
以上給大家分享了八種AngularJS 最常用的功能,希望對(duì)大家有所幫助!
相關(guān)文章
Angular應(yīng)用打包和部署實(shí)現(xiàn)過程詳解
這篇文章主要為大家介紹了Angular應(yīng)用打包和部署實(shí)現(xiàn)過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08如何在Angular應(yīng)用中創(chuàng)建包含組件方法示例
這篇文章主要給大家介紹了關(guān)于如何在Angular應(yīng)用中創(chuàng)建包含組件的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Angular具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03Angularjs實(shí)現(xiàn)控制器之間通信方式實(shí)例總結(jié)
這篇文章主要介紹了Angularjs實(shí)現(xiàn)控制器之間通信方式,結(jié)合實(shí)例形式總結(jié)分析了AngularJS控制器常用通信方式及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2018-03-03angular中兩種表單的區(qū)別(響應(yīng)式和模板驅(qū)動(dòng)表單)
這篇文章主要介紹了angular中兩種表單的區(qū)別(響應(yīng)式和模板驅(qū)動(dòng)表單),詳細(xì)的介紹了這兩種表單的實(shí)現(xiàn)以及區(qū)別,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2018-12-12AngularJS的ng Http Request與response格式轉(zhuǎn)換方法
這篇文章主要介紹了AngularJS的ng Http Request與response格式轉(zhuǎn)換方法,結(jié)合實(shí)例形式分析了AngularJS實(shí)現(xiàn)Request與response格式轉(zhuǎn)換操作的相關(guān)設(shè)置與使用技巧,需要的朋友可以參考下2016-11-11簡(jiǎn)介可以自動(dòng)完成UI的AngularJS工具angular-smarty
這篇文章主要介紹了簡(jiǎn)介可以自動(dòng)完成UI的AngularJS工具angular-smarty,包括其中隔離作用域綁定指令符和promise的使用,需要的朋友可以參考下2015-06-06淺談angular表單提交中ng-submit的默認(rèn)使用方法
今天小編就為大家分享一篇淺談angular表單提交中ng-submit的默認(rèn)使用方法。具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧2018-09-09