How can I include an hamletfile inside another using widgetFile?

。_饼干妹妹 提交于 2019-12-10 09:27:45

问题


For reusability, I want to re-use a widget inside another. For instance, the widget file blogpost.hamlet could contain how a post is displayed, and blog.hamlet could contain the full blog.

The following content of blog.hamlet does not work:

$forall post <- posts
    ^{widgetFile "blogpost")

So, what is the correct syntax to embed one widget inside another?


回答1:


The Hamlet syntax does not support embedding Template Haskell splices inside of it, which makes the code you're looking to do impossible. Instead, you need to create a helper function in Haskell, e.g.:

blogpost post = $(widgetFile "blogpost")

Then in blog.hamlet, you can have:

$forall post <- posts
    ^{blogpost post}


来源:https://stackoverflow.com/questions/10791591/how-can-i-include-an-hamletfile-inside-another-using-widgetfile

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!