什么是更好的角度指令或CSS选择器?

时间:2015-02-09 12:04:36

标签: css angularjs

我正在学习角度,并且我正在测试指令ngClass。 使用ngClass,我可以做类似的事情:

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

但我也可以使用css选择器执行此操作:

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

什么更好?

2 个答案:

答案 0 :(得分:2)

首先,两个案例并不相同。但是,如果您正在寻找一种方式来设计偶数/奇数元素,那么毫无疑问:您应该使用CSS来完成CSS工作,而不是javascript。使用javascript添加类名是可能的,但如果在元素上使用实际的类名并不重要,那么在这种情况下首选坚持:nth-child方法。

纯CSS方式的两个主要好处:

  • 避免其他观察者Angular必须设置数据绑定。
  • 性能和更干净的HTML代码。

答案 1 :(得分:1)

我将ng-class视为模型某些属性的可视化端口。它不仅仅用于造型,而是可以提供它 IMO总是最好尽可能多地使用标准,这样你就不那么依赖别人了。
使用CSS的原因还有很多,比如:性能,更少出错,更少依赖等等。