Динамический виджет
У меня есть виджет элемента со следующей подписью elementWidget :: MonadWidget t m => ElementInfo -> m (Event t ElementInfo)
где Event t ()
отражает, был ли элемент нажат
Я создал новый виджет поверх elementWidget, как показано ниже
overviewWidget :: MonadWidget t m => [ElementInfo] -> m (Event t ElementInfo)
overviewWidget entries = divClass "entries" $ do
ev <- sequence $ elementWidget <$> entries
return $ leftmost ev
В случае возникновения события reviewWidget я хочу отобразить другой виджет detailWidget :: ElementInfo -> m ()
, Я видел функцию dyn
а также widgetHold
,
Насколько я понимаю, мне нужно создать динамический, содержащий текущий видимый виджет, но как я могу захватить событие click, если оно все еще находится внутри m(Event t a)
без предоставления дом.