【问题标题】:Hoes does the HAML compiler know when a line has ended?HAML 编译器知道一行何时结束吗?
【发布时间】:2014-09-22 15:12:30
【问题描述】:

HAML 对 ERB 有一个很好的优势,这个优势就是没有结束标签。

ERB
<strong><%= item.title %></strong>

HAML
%strong= item.title

但是,我总是被告知 HTML 有结束标签,以便它知道何时停止做某事。在这种情况下,请停止将文本加粗。

HAML 编译器是超人吗?或者有什么隐藏的方法可以知道什么时候发生。

【问题讨论】:

  • 突出显示有问题,如果有人知道如何解决它会很棒。

标签: html ruby-on-rails haml


【解决方案1】:

HAML 基于缩进

%p
 Hello
 %span= " Popey"

会生成这样的 HTML:

<p>Hello<span> Popey</span></p>

HAML 编译器不是超人,它只知道如果下一行的缩进比当前的大,那么下一行被包裹在容器中。

【讨论】:

  • 谢谢你,真的把事情搞清楚了!将在 3 分钟内接受答复。
【解决方案2】:

HAML 基于缩进。编译器将其逻辑基于嵌套指令。例如:

%strong Some bold text
%strong
  All of
  these lines are
  bold text
This text is not bold

更多信息在这里:http://haml.info/docs/yardoc/file.REFERENCE.html

【讨论】:

  • 谢谢!很高兴有林在那里进一步阅读。
  • @PopeyGilbert 是的,HAML 很有趣。如果您刚开始,您可能还想查看SLIM (slim-lang.com)。不那么流行,但它类似于 HAML
猜你喜欢
  • 1970-01-01
  • 2011-06-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-14
  • 2021-05-09
  • 2023-03-03
相关资源
最近更新 更多