反应自动渲染Math Latex

时间:2017-05-12 17:11:07

标签: reactjs mathjax katex

我最近升级到ReactJS用于我的Web应用程序。我一直在使用Angular和MathJax在页面上自动渲染数学TeX(每当数学在页面上发生变化时,MathJax会遍历页面,找到分隔符并将数学渲染到位)。我还没有能够让MathJax与React组件生命周期一起工作,并且似乎没有多少在线信息。我以前的实现是收听页面的更改并调用:

  

MathJax.Hub.Queue(["排版",MathJax.Hub]);

如何使用React自动渲染数学TeX(我应该使用ReactJS)?请注意,我的数学与一组文本内联,我想渲染数学而不渲染整个文本。

提前致谢!

凯文

1 个答案:

答案 0 :(得分:2)

我能够找到解决方案。从MathJax took down their CDN开始,确保MathJax脚本链接正确。

class Preview extends React.Component {

  componentDidMount () {
    MathJax.Hub.Queue(["Typeset",MathJax.Hub, ReactDOM.findDOMNode(this)]);
  }

  componentDidUpdate () {
    MathJax.Hub.Queue(["Typeset",MathJax.Hub, ReactDOM.findDOMNode(this)]);
  }

  render () {
    var tex= this.props.name,

    if(!!tex) {
      texDisplay = "$$" + tex + "$$"
    }
    return (
      <div>The Tex!</div>
      <div>{texDisplay}</div>
    )
  }
}