我正在使用当前版本的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
放入ERB:
<%= wrap_me('span') do %>
Hello
<% end %>
现在,这会在倾斜-2.0.9 / lib / tilt / template.rb的第274行上引发一个SyntaxError,它试图评估一个字符串。看来,捕获已经超出了“结束”范围。
我在这里做错了什么?如果Tilt阻止帮助程序出现障碍,该如何使用capture_html
和concat_content
?
感谢您的帮助!
(我会在Middleman forum中问同样的问题。)
答案 0 :(得分:0)
显然,使用块时,必须删除等号。以下作品:
<% wrap_me('span') do %>
Hello
<% end %>