Haml:如何设置动态类值?

Posted

技术标签:

【中文标题】Haml:如何设置动态类值?【英文标题】:Haml: how do I set a dynamic class value? 【发布时间】:2010-09-05 14:24:30 【问题描述】:

我希望将以下 html.erb 代码移至 Haml:

<span class="<%= item.dashboardstatus.cssclass %>" ><%= item.dashboardstatus.status %></span>

它所做的是将当前分配状态的CSS类关联到span。

这在 Haml 中是如何完成的?我确定我错过了一些非常简单的东西。

【问题讨论】:

您的解决方案是否与以下相同? 【参考方案1】:

不确定。也许:

%span:class => item.dashboardstatus.cssclass = item.dashboardstatus.status

【讨论】:

当你的标签不是直接的html标签,而是通过rails helper生成的时候怎么办?【参考方案2】:

这行得通。

页面的链接在哪里做这样的事情

  %div"data-turbolinks" => "false"
    = link_to 'Send payment', new_payments_manager_path(sender_id: current_user.id, receiver_id: @collaboration.with(current_user).id, collaboration_id: params[:id]), class: 'button'

【讨论】:

【参考方案3】:

你可以用数组语法做多个条件类选择器:

%div class: [ ("active" if @thing.active?), ("highlight" if @thing.important?) ]

【讨论】:

以上是关于Haml:如何设置动态类值?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Grails 2.2 中设置域类值的默认值?

Kivy:继承另一个动态类值

在 Angular 模板中设置类值

HAML 中 Javascript 中的 Ruby 方法

如何在 Rails 中动态更改格式渲染引擎?

如何根据复选框值设置标签样式? [复制]