国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

詳解angularJs中關于ng-class的三種使用方式說明

2019-11-19 16:26:04
字體:
來源:轉載
供稿:網友

在開發中我們通常會遇到一種需求:一個元素在不同的狀態需要展現不同的樣子。

而在這所謂的樣子當然就是改變其css的屬性,而實現能動態的改變其屬性值,必然只能是更換其class屬性

這里有三種方法:

第一種:通過數據的雙向綁定(不推薦)

第二種:通過對象數組

第三種:通過key/value( 推薦 )

下面簡單說下這三種:

第一種:通過數據的雙向綁定

實現方式:

function changeClass(){ $scope.className = "change2";}<div class="{{className}}"></div>

網上各種不推薦,說實話,既然angularJS雙向數據綁定這么吊,為什么不能通過這個來改變呢!查了下原由:“在controller涉及了classname在我看來是乎總是那么詭異,我希望的是controller是一個干凈的純javascript意義的object”,當然并沒有明文固定不能夠這么使用的,而且反而我覺得這樣非常的方便,讓html中元素想怎么變就怎么變!同理中的img元素中的src就不可以通過別的來改變,但是通過這種方式就是可以的!

當然,這種方式也的確給人的感覺怪怪的,個人認為:可以不得已而為之~

第二種:通過字符串數組的形式來改變

實現方式:

function changeClass(){ $scope.className = true/false;} <div ng-class="{true:'zhende',false:'jiade'}[className]"></div>

實現很簡單,就是當className為真的時候class為zhende,相反則為jiade。

但是有一點不好的只能夠讓一個元素擁有兩種狀態,雖然這么說!基本也是滿足所需了,我一般都用這個。簡單、直觀!

第三種:通過key/value的方式

實現方式:

function changeClass(){ $scope.lala = true;} <div ng-class="{'selectClass':select,'choiceClass':choice,'haha':lala}"></div>

當lala為true的時候,class則為haha,個人認為這個是比較推薦的,可以彌補第二種方式的點點遺憾~

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新河县| 通渭县| 基隆市| 平泉县| 东安县| 石嘴山市| 陇西县| 宜兰县| 泊头市| 洛浦县| 乐山市| 黎川县| 瑞金市| 厦门市| 蓬莱市| 镇原县| 灵宝市| 小金县| 密云县| 石景山区| 荆门市| 桐柏县| 沛县| 颍上县| 鹰潭市| 芜湖县| 西乌珠穆沁旗| 新密市| 西昌市| 清苑县| 内乡县| 威海市| 安平县| 肃宁县| 辽宁省| 沐川县| 林芝县| 峡江县| 柳江县| 新兴县| 奉化市|