【发布时间】:2020-01-28 00:46:15
【问题描述】:
我正在尝试使用 MathJax 显示 MathML 方程。我在头部包含了 MathML 的脚本参考。对于 Razor 页面应用程序,正确呈现 MathML。在 Blazor(服务器端应用程序)中,它显示为纯线性文本。
当我刷新页面时,它似乎正确呈现了 MathML,但很快又恢复为纯文本。
我正在使用 .NET Core 3.0。我也在 .NET Core 2.2 上尝试过,但也不起作用。 使用下面的脚本不起作用...
<script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
<script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/mml-svg.js"></script>
但如果我改用这个,
<script type="text/javascript" async src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js?config=TeX-MML-AM_CHTML"></script>
它仅在手动刷新页面后才起作用。
<p>
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mi>x</mi> <mo>=</mo>
<mrow>
<mfrac>
<mrow>
<mo>−</mo>
<mi>b</mi>
<mo>±</mo>
<msqrt>
<msup><mi>b</mi><mn>2</mn></msup>
<mo>−</mo>
<mn>4</mn><mi>a</mi><mi>c</mi>
</msqrt>
</mrow>
<mrow>
<mn>2</mn><mi>a</mi>
</mrow>
</mfrac>
</mrow>
<mtext>.</mtext>
</math>
</p>
它不显示二次方程的 x 值,而是显示“x = - b ± b2 - 4ac 2a ”。省略所有数学符号/格式。
如果我刷新页面,则 MathML 格式会正确呈现。如果我导航到其他页面并返回到使用 MathML 的页面,则必须刷新页面才能看到正确的呈现。
【问题讨论】:
-
在使用 MathJax 3 是否成功?
-
不,同样的问题仍然存在。
-
从那时起,我已经找到了一些将 MathJax 与 Blazor 结合使用的关键...请参阅此处:github.com/limefrogyank/MathJaxBlazor