purescript halogen:将 IProp 附加到 HTML

purescript halogen: Append IProp to HTML

有没有办法将 IProp 附加到 HTML

这是我正在尝试做的一个例子:

foo :: forall p i. H.HTML p i -> H.HTML p i
foo myElement = 
  addProp (HP.id_ "SomeId") myElement

其中 addPropmyElement,给它 Id(或任何其他任意 属性)和 returns 返回这个基本上是新元素相同,但是否添加了新的 属性?

或者换句话说,这个函数 addProp 是否以某种方式存在?

它不存在,就好像它确实存在一样,它会绕过可以在给定元素上设置的有效属性的类型检查,而且它会让你说一些无意义的话,比如 addPropHH.text 值上。

尽管如此,这并非不可能编写,因为 属性 检查内容并不是 HTML 表示的固有部分 - 它是最顶层的一个改进层。 HTML 仅由普通数据类型组成,因此您可以对 HTML 值进行模式匹配以根据需要进行操作。