4

我正在reflex-platform使用obelisk. 这是我获取当前日期的前端代码

pb <- getPostBuild
postBuildTime <- performEvent $ pb $> liftIO getCurrentTime
let today = Text.pack . formatTime defaultTimeLocale "%F" <$> postBuildTime

我可以通过放置来确认这是否有效

dynText =<< holdDyn "loading" today

它甚至不会在一瞬间显示“正在加载”,而是在浏览器(谷歌浏览器)中显示“2021-03-26”。

但是,尝试将today事件放入 an<input>是行不通的。这是代码:

foo <- inputElement $ def & inputElementConfig_setValue .~ today

<input>保持空白。

更奇怪的是:在我的实际代码中,<input>通过的初始值inputElementConfig_initialValue .~ "BAAAR"也没有显示。然而,创建的动态文本就像

dynText =<< holdDyn "" foo

确实显示“BAAAR”一瞬间。


为了平息任何偏执,我inputElementConfig_setValue用一个简单的按钮进行了测试,效果很好。<input>即我可以通过单击一个按钮来设置的值。

所以postBuildTime事件的作品和inputElementConfig_setValue作品,但两者的结合留下了<input>空白。

编辑

最小示例,包括有关如何运行的说明和结果的屏幕截图:

https://github.com/rubenmoor/reflex-bug-pbtime

4

1 回答 1

1

https://github.com/reflex-frp/reflex-dom/commit/93f0f4bd00e1dc871d193d7d53d5d7f2dbb518af

看起来这是一个错误,已在reflex-dom.

于 2021-04-24T23:41:49.863 回答