2015-02-09 63 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更好些,还有很多其他的原因,比如:性能好,出错少,依赖性低等。