Hyperstack добавляет динамический класс к ручным именам классов
Мне нужно добавить динамический класс для некоторых обычных классов при обновлении синтаксиса для Hyperstack:
div.upload_header.text_left(class: ('uploaded' if
FileUploads.complete?)) do
Должно стать что-то вроде этого:
DIV(class: 'upload-header text-left (dynamic 'uploaded' should go
here)') do
Я просто не могу понять, как / если регулярные и динамические классы могут быть объявлены вместе.
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)
Я уверен, что есть много других способов сделать это, это рубин!