使用Threepenny-gui中的'set text',您可以在给定元素和字符串的情况下设置该元素的文本:
Prelude Graphics.UI.Threepenny.Core> :t set
set :: ReadWriteAttr x i o -> i -> UI x -> UI x
Prelude Graphics.UI.Threepenny.Core> :t set text
set text :: String -> UI Element -> UI Element
get函数的存在使我认为应该可以将文本赋予元素。
Prelude Graphics.UI.Threepenny.Core> :t get
get :: ReadWriteAttr x i o -> x -> UI o
Prelude Graphics.UI.Threepenny.Core> :t text
text :: WriteAttr Element String
Prelude Graphics.UI.Threepenny.Core> :t get text
get text :: Element -> UI ()
然而,'获取文本'的返回类型并不是我所期望的。如何从元素中恢复原始字符串?
答案 0 :(得分:1)
如果我没记错的话,问题是元素的文本值包含所有子元素作为HTML代码。我建议改为使用value
,这适用于输入字段。
ReadAttr
和WriteAttr
是根据ReadWriteAttr
实施的,以避免超载。正如类型所示,get
对WriteAttr
没有任何帮助,set
对ReadAttr
没有任何用处。