Ruby on rails-VERb序列末尾的'-%>'(减号)

在ERb序列末尾使用“-”(减号)有什么意义?

例:

<% 3.times do -%>
  FooBar<br />
<% end -%>
Sometext

无论我是否使用“-”,浏览器都会呈现相同的输出。

谢谢,阿尔法。

Alpha Sisyphus asked 2020-01-13T04:30:34Z
2个解决方案
72 votes

在Rails 3之前,ERB在呈现HTML内容时在该值之前和之后添加其他空格。 在HTML中,空格并不重要,除非您使用的是特殊标签,例如-

使用-符号强制ERB以避免多余的空间。

这在Rails 3中完全没有用。

Simone Carletti answered 2020-01-13T04:31:04Z
4 votes

在erb标签的开头或结尾部分使用减号可抑制该行上标签之前或之后的空格。

在生成带有erb的文本/普通电子邮件之类的东西时,它非常有用,但是就像@Simone指出的那样,现在已经没有意义了。

noodl answered 2020-01-13T04:31:28Z
translate from https://stackoverflow.com:/questions/4407862/minus-sign-at-the-end-of-a-erb-sequence