我正在使用Middleman的当前版本4.3.3。
我想定义一个接受块的自定义帮助器。为简单起见,这里是wrap_me
的一个荒谬的例子,它用给定的标签包装块内容。
应该可以使用capture_html
provided by Padrino(在Middleman文档中明确提到)实现这一点:
module CustomHelpers
def wrap_me(tag, &block)
captured = capture_html(&block)
concat_content "<#{tag}>" + captured + "</#{tag}>"
end
end
在再培训局使用:
<%= wrap_me('span') do %>
Hello
<% end %>
现在,这会在tilt-2.0.9 / lib / tilt / template.rb的第274行引发一个SyntaxError,它试图评估一个字符串。看来,捕获超越了“结束”。
我在这做错了什么?如果Tilt阻止助手有阻挡,如何使用capture_html
和concat_content
?
谢谢你的帮助!
(我会在Middleman forum问同样的问题。)
显然,在使用块时,必须删除等号。以下作品:
<% wrap_me('span') do %>
Hello
<% end %>