Fir*_*DoL 2 html5 ruby-on-rails slim-lang
我有一种情况,我需要在div上设置"data-*"的值.我实际使用的代码是这样的:
= tag('div', { class: 'agile-carousel',\
data: { carousel_list: url_for(format: :json) } }, true)
= "</div>".html_safe
Run Code Online (Sandbox Code Playgroud)
哪个太可怕了.rails还以一种<div />方式关闭div ,Chrome和其他浏览器肯定不喜欢(创造一些灾难).
所以我的解决方案就是那个.我想问一下是否有另一种方法可以做到这一点.
更新1:
我有小问题,这段代码:
span class==I18n.locale == locale_used ? "inactive" : nil
= link_to(I18n.t('locale_name', locale: locale_used),\
url_for(locale: locale_used))
Run Code Online (Sandbox Code Playgroud)
如果我删除link_to它的工作原理.请注意,如果我插入类似的东西,| text则会返回错误:syntax error, unexpected keyword_ensure, expecting $end
您可以使用content_tag而不是tag生成<div></div>而不是a <div>,但您不应该.
你正在使用Slim,所以使用Slim:
.agile-carouesel data-carousel_list=url_for(format: :json)
Run Code Online (Sandbox Code Playgroud)
输出:
<div class="agile-carouesel" data-carousel_list="some URL"></div>
Run Code Online (Sandbox Code Playgroud)
Slim和HAML的重点在于你有这种非常简洁的语法来编写标签.您应该使用它,而不是在不需要时使用Rails的标记帮助程序.通过使用它们,您将重新引入它们应该删除的所有标点符号混乱.
| 归档时间: |
|
| 查看次数: |
3221 次 |
| 最近记录: |