【问题标题】:Dynamic class name in HAMLHAML 中的动态类名
【发布时间】:2011-05-22 14:45:27
【问题描述】:

有没有更好的方法将以下内容转换为 HAML?

<% flash.each do |key, value| %>
  <div class="flash <%= key %>"><%= value %></div>
<% end %>

我能做的最好的就是:

  - flash.each do |key, value|
    %div{:class => "flash " + key.to_s}= value

但这似乎很尴尬。而.flash#{ key}= value 似乎不对?!?

【问题讨论】:

    标签: haml erb


    【解决方案1】:

    如果您正在寻找稍微简洁的东西,您现在可以在 haml 中执行此操作:

    - flash.each do |key, value|
      .flash(class=key)= value
    

    【讨论】:

      【解决方案2】:

      稍微好一点:

       - flash.each do |key, value|
         .flash{:class => key}= value
      

      【讨论】:

        【解决方案3】:

        在主题上添加变体:

        这个erb

        <% flash.each do |key, value| %>
          <div class="alert alert-<%= key %>"><%= value %></div>
        <% end %> 
        

        可能是

        =flash.each do |key, value|
          .alert{:class => "alert-#{key}"}
            =value
        

        类似于How do I make dynamic ids in Haml?

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2010-09-05
          • 1970-01-01
          • 2013-03-10
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多