我想将pure-table-odd
仅添加到每个奇数表行。在Ruby on Rails中,我会使用cycle
。在凤凰城实现这一目标的最佳方法是什么,它占用最少的CPU功率?
<%= for group <- @groups do %>
<tr class="pure-table-odd">
<td><%= group.name %></td>
</tr>
<% end %>
答案 0 :(得分:2)
一种简单的方法是将索引与组一起获取并检查rem(index, 2) == 1
:
<%= for {group, index} <- Enum.with_index(@groups) do %>
<tr class="<%= if rem(index, 2) == 1, do: "pure-table-odd" %>">
<td><%= group.name %></td>
</tr>
<% end %>
使用Stream.zip
和Stream.cycle
的更奇特的方式,
但很可能效率低下:
<%= for {group, class} <- Stream.zip(@groups, Stream.cycle(["", "pure-table-odd"])) do %>
<tr class="<%= class %>">
<td><%= group.name %></td>
</tr>
<% end %>