如果有p
这样:
<p ng-repeat="text in texts">{{text}}</p>
在渲染html时,向p
添加更多类是否会损害Angular性能?例如,这段代码:
<p ng-repeat="text in texts" class="normal par red small italic">{{text}}</p>
如果它会影响性能问题,那真的值得注意吗?
答案 0 :(得分:0)
首先,您可以在ng-repeat
中调整的一个方面是唯一键:Angular会自动将$$hashKey
属性添加到数组中的每个对象。
您可以添加track by
来提高循环效果。
然后,如果它只是为了添加类,那就没关系。但是,如果你有一个很大的文本列表,并且你愿意在每个元素上添加指令(例如:ng-click
),那么你可以观察到一些缓慢的渲染。
答案 1 :(得分:0)
在您的示例中,类只是一些字符串,仅此而已。 Angular甚至不需要考虑它。如果有成本,那么它应该在浏览器端编译您的类并分配样式。
因为我可以访客为什么要添加类,我认为拥有更多类也比分层CSS样式更好,因为它需要更少的DOM查询和操作。
没关系。但是,仍然可以通过基准测试来引导一些更复杂的问题。所以试一试。