2015-02-09 64 views
1

我正在學習角,我正在測試指令ngClass。 隨着ngClass我可以做這樣的事情:什麼是更好的角度指令或CSS選擇器?

<li ng-repeat="language in languages" ng-class="{line:$even}">{{language}}</li> 

但我也能做到這一點與CSS選擇:

li:nth-child(even) { 
    // some css code here 
} 

什麼是好?

+0

什麼是「這」,你在做什麼,可以以某種方式使用任何一種方法? – BoltClock 2015-02-09 12:06:16

+0

你需要啓用javascript才能顯示'ng-class =「{line:$ even}'。css方法不需要javascript;這就是區別 – 2015-02-09 12:09:16

+0

更好?以什麼方式?最有可能取決於你想要做的整體,你的項目是基於什麼等等...... – Novocaine 2015-02-09 12:12:33

回答

2

首先,兩種情況並不相同。但是,如果您正在尋找的是一種設計奇偶元素的方式,那麼毫無疑問:您應該使用CSS來完成CSS作業,而不是JavaScript。使用javascript來添加類名是可能的,但是如果在元素上沒有實際的類名並不重要,那麼在這種情況下優選堅持:nth-child方法。純CSS方式

兩大好處:

  • 避免額外的觀察家角將必須爲數據綁定設置。
  • 性能和更清晰的HTML代碼。
+0

謝謝你,我正在尋找一個像這樣的答案。 – 2015-02-09 12:28:08

1

我看到ng-class作爲模型的某些屬性的視覺端口。它不只是爲了造型,而是可以提供它。
海事組織最好儘可能多地使用標準,這樣你就不那麼依賴別人。
爲什麼使用CSS更好些,還有很多其他的原因,比如:性能好,出錯少,依賴性低等。