【发布时间】:2021-06-23 11:16:19
【问题描述】:
我正在使用 reflex-platform 和 obelisk。
这是我获取当前日期的前端代码
pb <- getPostBuild
postBuildTime <- performEvent $ pb $> liftIO getCurrentTime
let today = Text.pack . formatTime defaultTimeLocale "%F" <$> postBuildTime
我可以通过放置来确认这是有效的
dynText =<< holdDyn "loading" today
它甚至不会在一瞬间显示“正在加载”,而是在浏览器(Google Chrome)中按预期显示“2021-03-26”。
但是,尝试将 today 事件放入 <input> 是行不通的。这是代码:
foo <- inputElement $ def & inputElementConfig_setValue .~ today
<input> 保持空白。
更奇怪的是:在我的实际代码中,<input> 通过inputElementConfig_initialValue .~ "BAAAR" 有一个初始值,它也没有显示。然而,像
dynText =<< holdDyn "" foo
会在瞬间显示“BAAAR”。
为了平息任何偏执,我用一个简单的按钮测试了inputElementConfig_setValue,效果很好。 IE。我可以通过点击一个按钮来设置<input>的值。
所以postBuildTime 事件有效,inputElementConfig_setValue 有效,但两者的组合使<input> 空白。
编辑
最小示例,包括有关如何运行的说明和结果的屏幕截图:
【问题讨论】:
标签: haskell frp reflex obelisk