最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

AngularJS中關(guān)于ng-class指令的幾種實(shí)現(xiàn)方式詳解

 更新時(shí)間:2016年09月17日 15:30:52   投稿:daisy  
這篇文章給大家介紹了angularJS中ng-class指令的三種實(shí)現(xiàn)方式,其中包括通過(guò)數(shù)據(jù)的雙向綁定、通過(guò)對(duì)象數(shù)組和通過(guò)key/value這三種方式,有需要的朋友們可以參考學(xué)習(xí),下面來(lái)一起看看吧。

前言

開(kāi)發(fā)中經(jīng)常會(huì)遇到這樣的需求,一個(gè)元素需要在不同的狀態(tài)下呈現(xiàn)不同的樣子,而在這所謂的的樣子當(dāng)然就是改變其css的屬性,而實(shí)現(xiàn)動(dòng)態(tài)的改變屬性值,我們就需要實(shí)現(xiàn)動(dòng)態(tài)的更換其class屬性值。

在這給大家介紹三種方法來(lái)實(shí)現(xiàn),大家可以根據(jù)自己的需求來(lái)選擇方式,下面來(lái)看看。

第一種:通過(guò)數(shù)據(jù)的雙向綁定(不推薦)

<div ng-controller="firstController">
  <div ng-class="{{className}}"></div>

</div>
<script>
  var app=angular.module("myModule",[])
   app.controller('firstController',function($scope){
     $scope.className='change';

   })
</script>

網(wǎng)上各種不推薦,說(shuō)實(shí)話,既然angularJS雙向數(shù)據(jù)綁定這么吊,為什么不能通過(guò)這個(gè)來(lái)改變呢!查了下原由:“在controller涉及了classname在我看來(lái)是乎總是那么詭異,我希望的是controller是一個(gè)干凈的純javascript意義的object”,當(dāng)然并沒(méi)有明文固定不能夠這么使用的,而且反而我覺(jué)得這樣非常的方便,讓html中元素想怎么變就怎么變!同理中的img元素中的src就不可以通過(guò)別的來(lái)改變,但是通過(guò)這種方式就是可以的!當(dāng)然,這種方式也的確給人的感覺(jué)怪怪的,個(gè)人認(rèn)為:可以不得已而為之~

第二種:通過(guò)對(duì)象數(shù)組

<div ng-controller="firstController">

 <div ng-class="{true:'change1',false:'change2'}[className]"></div>


</div>
<script>
  var app=angular.module("myModule",[])
   app.controller('firstController',function($scope){
     $scope.className=true;

   })
</script>

實(shí)現(xiàn)很簡(jiǎn)單,就是當(dāng)classNametrue的時(shí)候classchange1,相反則為change2。

但是有一點(diǎn)不好的只能夠讓一個(gè)元素?fù)碛袃煞N狀態(tài),雖然這么說(shuō)!基本也是滿足所需了,我一般都用這個(gè)。簡(jiǎn)單、直觀!

第三種:通過(guò)key/value

<div ng-controller="firstController">

  <div ng-class="{'change1':select,'change2':choice,'change3':lala}">

</div>
<script>
  var app=angular.module("myModule",[])
   app.controller('firstController',function($scope){
     $scope.select=true;
     $scope.lala=true;

   })
</script>

當(dāng)lalatrue的時(shí)候,class則為change3,個(gè)人認(rèn)為這個(gè)是比較推薦的,可以彌補(bǔ)第二種方式的點(diǎn)點(diǎn)遺憾~

總結(jié)

我們?nèi)绻陧?xiàng)目中可以靈活的運(yùn)用這些指令會(huì)給我們帶來(lái)非常多的便利,我們?cè)诮鉀Q問(wèn)題的時(shí)候能有更多的思路,這樣我們可以組合的使用這些指令來(lái)快速的解決一些比較苦惱的問(wèn)題!以上就是這篇文章的全部?jī)?nèi)容,希望能對(duì)大家想學(xué)習(xí)或者工作帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流。

相關(guān)文章

  • AngularJS入門(mén)教程之路由與多視圖詳解

    AngularJS入門(mén)教程之路由與多視圖詳解

    本文主要介紹AngularJS 路由與多視圖詳解,這里整理了相關(guān)資料及示例代碼,詳細(xì)說(shuō)明了在開(kāi)發(fā)過(guò)程中如何應(yīng)用,有興趣的朋友可以看下
    2016-08-08
  • 激動(dòng)人心的 Angular HttpClient的源碼解析

    激動(dòng)人心的 Angular HttpClient的源碼解析

    這篇文章主要介紹了Angular HttpClient的源碼解析,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-07-07
  • 模板視圖和AngularJS之間沖突的解決方法

    模板視圖和AngularJS之間沖突的解決方法

    這篇文章主要介紹了模板視圖和AngularJS之間沖突的解決方法,結(jié)合實(shí)例形式分析了AngularJS模板視圖沖突的原因并給出了2種解決方法供大家參考使用,需要的朋友可以參考下
    2016-11-11
  • 詳解AngularJS中$http緩存以及處理多個(gè)$http請(qǐng)求的方法

    詳解AngularJS中$http緩存以及處理多個(gè)$http請(qǐng)求的方法

    $http 是 AngularJS 中的一個(gè)核心服務(wù),用于讀取遠(yuǎn)程服務(wù)器的數(shù)據(jù),通過(guò)本文給大家介紹AngularJS中$http緩存以及處理多個(gè)$http請(qǐng)求的方法,希望的朋友一起學(xué)習(xí)吧
    2016-02-02
  • AngularJS中的Directive實(shí)現(xiàn)延遲加載

    AngularJS中的Directive實(shí)現(xiàn)延遲加載

    延遲加載通常是直到用戶交互時(shí)才加載,那么如何實(shí)現(xiàn)延時(shí)加載的呢?下面通過(guò)本文一起學(xué)習(xí)AngularJS中的Directive實(shí)現(xiàn)延遲加載,對(duì)angularjs延時(shí)加載相關(guān)知識(shí)感興趣的朋友一起學(xué)習(xí)吧
    2016-01-01
  • 使用AngularJS 跨站請(qǐng)求如何解決jsonp請(qǐng)求問(wèn)題

    使用AngularJS 跨站請(qǐng)求如何解決jsonp請(qǐng)求問(wèn)題

    這篇文章主要介紹了使用AngularJS 跨站請(qǐng)求如何解決jsonp請(qǐng)求問(wèn)題,下面通過(guò)本文給大家分享解決辦法,需要的朋友參考下
    2017-01-01
  • AngularJS ng-repeat指令及Ajax的應(yīng)用實(shí)例分析

    AngularJS ng-repeat指令及Ajax的應(yīng)用實(shí)例分析

    這篇文章主要介紹了AngularJS ng-repeat指令及Ajax的應(yīng)用,結(jié)合實(shí)例形式分析了ng-repeat指令的功能及ajax請(qǐng)求交互相關(guān)操作技巧,需要的朋友可以參考下
    2017-07-07
  • angularjs實(shí)現(xiàn)天氣預(yù)報(bào)功能

    angularjs實(shí)現(xiàn)天氣預(yù)報(bào)功能

    這篇文章主要為大家詳細(xì)介紹了angularjs實(shí)現(xiàn)天氣預(yù)報(bào)功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • angular inputNumber指令輸入框只能輸入數(shù)字的實(shí)現(xiàn)

    angular inputNumber指令輸入框只能輸入數(shù)字的實(shí)現(xiàn)

    這篇文章主要介紹了angular inputNumber指令輸入框只能輸入數(shù)字的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • 淺談Angular 觀察者模式理解

    淺談Angular 觀察者模式理解

    這篇文章主要介紹了淺談Angular 觀察者模式理解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-11-11

最新評(píng)論

龙口市| 虎林市| 东明县| 烟台市| 冀州市| 和硕县| 大庆市| 吉木萨尔县| 冷水江市| 黔东| 辽源市| 灌南县| 陇南市| 江达县| 利川市| 昆山市| 乐业县| 乡宁县| 龙海市| 东乌| 柘城县| 自治县| 巴林左旗| 郴州市| 彭州市| 巩留县| 嘉峪关市| 太保市| 泰宁县| 肥城市| 绥棱县| 阿拉善左旗| 额尔古纳市| 密山市| 同仁县| 黄冈市| 信阳市| 思茅市| 光山县| 旬邑县| 大邑县|