我最近为我的Web应用程序升级到ReactJS。我一直在使用 Angular 和 MathJax 在页面上自动渲染数学 TeX(每次页面上的数学更改时,MathJax 都会遍历页面,找到分隔符并就地渲染数学(。我无法让 MathJax 使用 React 组件生命周期,而且网上似乎没有太多信息。我以前的实现是侦听对页面的更改并调用:
MathJax.Hub.Queue(["Typeset",MathJax.Hub](;
我将如何使用 React 自动渲染数学 TeX(我甚至应该使用 ReactJS(?请注意,我的数学与文本正文内联,我想在不呈现整个文本的情况下呈现数学。
提前感谢!
凯文
我能够找到解决方案。还要确保MathJax脚本链接是正确的,因为MathJax关闭了他们的CDN。
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>
)
}
}