joh*_*ual 5 mathml mathjax elm
这只是一个带有一些废话数学的通用 div。无法正确渲染
div [] [ math [] [text "$\\int_a^b \frac{2}{3}$"]
Run Code Online (Sandbox Code Playgroud)
这就是结果
<math>$\int_a^b \frac{2}{3}$</math>
Run Code Online (Sandbox Code Playgroud)
所以我不明白mathElm是如何工作的。这看起来像mathML
就目前而言,我认为进行mathjax调用比学习(或创建)一种新的标记语言并编写纯 mathML更容易。这是它应该是什么样子
<math xmlns="http://www.w3.org/1998/Math/MathML">
<msubsup>
<mo>∫<!-- ? --></mo>
<mi>a</mi>
<mi>b</mi>
</msubsup>
<mfrac>
<mn>2</mn>
<mn>3</mn>
</mfrac>
</math>
Run Code Online (Sandbox Code Playgroud)
Elm 没有mfrac标签,但我很乐意自己写!这组标签在网络上使用的频率越来越高,但 Elm-Lang 本身可能还没有采用。
Elm 确实公开node了您可以在何处定义自己的任何类型的标签。
node
: String
-> List (Attribute msg)
-> List (Html msg)
-> Html msg
Run Code Online (Sandbox Code Playgroud)
这表明了一个潜在的解决方案。虽然没有导致任何地方:
node "math" [] [ node "mo" [] [ text "∫"] ]
Run Code Online (Sandbox Code Playgroud)
您应该能够用来Html.node执行 html 支持的任何操作。
view model =
math []
[ node "msup" []
[ node "mi" [] [ text "x" ]
, node "mn" [] [ text "2" ]
]
]
Run Code Online (Sandbox Code Playgroud)
您可能想要定义数学构造而不是node到处使用。