我在我的angular2组件中调用MathJax.Hub函数时遇到了问题。我昨晚在这个问题上挣扎了好几个小时。我需要调用MathJax API来重新呈现一些动态绑定的InnerHTML字符串。问题是,无论我如何导入MathJax模块或npm安装它,我都无法访问component.ts中的MathJax全局变量。我通过尝试MathJax.version验证了这一点,并且编译器抱怨无法找到未定义的版本。
我在我的模块中运行了npm install MathJax。运行npm install @typings mathjax。尝试过导入mathjaxdirective。在mathjax install上提供的示例HTML中,我可以看到正确应用了格式。在我的打字稿中访问MathJax全局变量的正确方法是什么?
答案 0 :(得分:2)
我实际上找到了解决方法。 http://ruinshe.moe/2016/05/31/support-mathjax-in-angular2/非常有帮助。我几乎完全像那样实现它。只有差异是@components中的指令被折旧,所以我在apps.module中声明了它。
答案 1 :(得分:2)
我找到了一个简单的解决方案。它如下:
在 index.html
中添加以下代码 <script type="text/x-mathjax-config">
MathJax.Hub.Config({tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}});
</script>
<script type="text/javascript" async
src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_CHTML">
</script>
在打字稿文件中添加此行作为导入:
declare var MathJax:any;
使用mathjax:
MathJax.Hub.Queue(["Typeset", MathJax.Hub]);