【问题标题】:Hyperstack add dynamic class to manual class namesHyperstack 将动态类添加到手动类名
【发布时间】:2019-03-27 20:42:47
【问题描述】:

在更新 Hyperstack 的语法时,我需要为一些常规类添加动态类:

div.upload_header.text_left(class: ('uploaded' if 
FileUploads.complete?)) do

应该变成这样:

DIV(class: 'upload-header text-left (dynamic 'uploaded' should go 
here)') do

我似乎无法弄清楚如何/是否可以一起声明常规类和动态类。

【问题讨论】:

  • 欢迎来到 Stack Overflow。您需要为您的问题添加一些精确度。你的问题是什么,你尝试了什么,你的问题是什么。请看:How to ask
  • 仅供参考,旧的 haml 样式(即div.upload_header)已被弃用,因此您无论如何都想摆脱那些东西。

标签: html css ruby-on-rails ruby hyperstack


【解决方案1】:

可以有条件地进行字符串插值:

DIV(class: "upload-header text-left #{'uploaded' if FileUploads.complete?}")

class参数也可以接受一个数组:

def upload_header_classes
  ['upload-header', 'text-left'].tap do |classes|
    classes << 'uploaded' if FileUploads.complete?
  end
end

DIV(class: upload_header_classes)

我相信还有很多其他方法可以做到这一点,这就是 ruby​​!

【讨论】:

    猜你喜欢
    • 2016-07-12
    • 2015-04-14
    • 2017-10-23
    • 1970-01-01
    • 2019-08-28
    • 1970-01-01
    • 2012-10-02
    • 2018-07-26
    • 2019-04-28
    相关资源
    最近更新 更多