将Tyxml_js.Svg值插入到_ocaml'的js_中;s Dom_svg

将Tyxml_js.Svg值插入到_ocaml'的js_中;s Dom_svg,ocaml,js-of-ocaml,Ocaml,Js Of Ocaml,假设我使用Tyxml的语法创建了一个SVG rect: let rect_elt = <:svg< <rect></rect> >> let rect_elt=> 如何使用js_of_ocaml的API将其插入DOM中 我想这样做: let _ = let rect_elt = <:svg< <rect></rect> >> in let svg_elt = Dom_svg.getElem

假设我使用Tyxml的语法创建了一个SVG rect:

let rect_elt = <:svg< <rect></rect> >>
let rect_elt=>
如何使用js_of_ocaml的API将其插入DOM中

我想这样做:

let _ =
  let rect_elt = <:svg< <rect></rect> >> in
  let svg_elt = Dom_svg.getElementById "graph-svg" in
  svg_elt##appendChild(rect_elt)
let\u=
让rect_elt=>进入
让svg_elt=Dom_svg.getElementById“图形svg”在
svg_elt#appendChild(rect_elt)

但是我不知道如何进行正确的类型转换。

好的,为了转换为(分别来自)Dom\u svg,必须创建
Tyxml\u cast.MakeTo
(分别来自)的实例:

并按如下方式使用:

let _ =
  let svg_elt = Dom_svg.getElementById "some-svg" in
  let rect_node = <:svg< <rect></rect> >>
    |> To_dom.of_node in
  svg_elt##appendChild(rect_node)
let\u=
让svg_elt=Dom_svg.getElementById在
让rect_节点=>
|>到中的\u节点的\u dom
svg_elt##appendChild(rect_节点)
let _ =
  let svg_elt = Dom_svg.getElementById "some-svg" in
  let rect_node = <:svg< <rect></rect> >>
    |> To_dom.of_node in
  svg_elt##appendChild(rect_node)