Digestive-functors-blaze会创建类似<input type="text" id="foo" name="foo" /><label for="foo">Bar</label>
的html,但我找不到任何标准方法,例如最后添加<br />
。
我想出了这个:
br :: (Monad m) => HappstackForm m H.Html BlazeFormHtml ()
br = Common.label $ \_ -> do
createFormHtml $ \cfg -> do
H.br
我可以用<++
附加它,它可以达到我的预期,但我想知道这是否是预期的方式?
此外,如何扩展例如fieldsets。
答案 0 :(得分:2)
这是预期的方式,尽管br
在编写为:{/ p>时会更加清晰
br :: Monad m
=> Form m i e BlazeFormHtml ()
br = view $ createFormHtml $ const H.br
无论如何,我认为这个定义有点麻烦所以我在viewHtml
添加了Text.Digestive.Forms.Html
函数:
viewHtml :: Monad m => a -> Form m i e (FormHtml a) ()
viewHtml = view . createFormHtml . const
这可以在digestive-functors-0.1.0.1中找到。使用这个新的组合器,您应该能够使用<++ viewHtml H.br
- 我希望这会有所帮助。