css - ruby rails动态css类
问题描述
我有一个页面,我在其中调用了我的共享组件
<%= render 'headers', positionRight: true, ...} %>
我想将positionRight
参数作为可选参数。在我的共享组件中,我无法让 css 工作
<section class=<%= (defined? positionRight && positionRight) ? "custom-css-class" : "" %>>
看起来它总是落入空的css类
解决方案
在您看来,将此添加为文件的第一行:
<% positionRight ||= false %>
<% section_class = positionRight ? 'custom-css-class' : '' %>
现在您可以section_class
在文件中的任何位置使用您的:
<section class='<%= section_class %>' >...
请注意section
元素中类的定义。您必须使用单引号,否则如果您的类名包含空格,则结果 html 元素将无效。
同样,请注意您的变量 positionRight 不是以 ruby 样式命名的(在 ruby 中,他们通常使用蛇形盒 =>position_right
会更具语义性)
推荐阅读
- sql - SQL:创建一个以最近 3 天日期为值的额外列
- python - 如何在 sympy 中绘制求解方程的结果?
- python - Python 单元测试 - 'gcsfs.utils.HttpError: Anonymous caller does not have storage.objects.list access to the Google Cloud Storage bucket。'
- r - 将 R 连接到 ServiceNow ODBC
- python - 不和谐.py | 如何只检查作者信息?
- matlab - 如何测试 ODE 积分是否达到平衡?
- python - 如何根据 2 个数据框中的“日期”列和“列表”列获取结果?
- xamarin - 无法解析 System.Int32 Xamarin.Essentials.Resource/Id::accessibility_action_clickable_span
- python - 如何从列表中的索引 1 开始并在列表中的最后一个元素之前结束
- arcgis-runtime - ArcGIS Runtime:如何使用 Z 在 SceneView 中创建 3d 立方体?