0

是否可以TypedTagscalatagsHTMLElement中创建?

构建HTMLElementTypedTag很简单:

import scalatags.JsDom.all._

val typedTag: TypedTag[Div] = div("abc")
val d: Div = typedTag.render
//somwhere `type Div = raw.HTMLDivElement`

是否可以创建相反方向的转换?给定Div我想要TypedTag[Div]的实例,以便使用 scalatags goodies 对其进行操作,然后将其渲染回HTMLElement. 是否有意义?

4

1 回答 1

2

可悲的是,不——如果你仔细考虑的话,这实际上没有任何意义,至少不是这样。问题是,aTypedTag不是 HTML 元素,它是构建HTML 元素的东西。相比之下,HTMLElement是一个实际的元素。所以基本上,你是想从一个已经混合好的杯子里拿出一袋可可粉。

我怀疑有可能构建您所要求的内容,但这会有点复杂——您必须构建一些东西,它需要一个HTMLElement并映射回TypedTag该元素类型的参数化,然后使用TypedTag,渲染它并替换现有HTMLElement的页内。它可以完成,但我怀疑它的工作量大于它的价值......

于 2016-09-25T14:34:35.900 回答