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?
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}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With