Angularjs 在ReactJS组件中呈现MathML表达式

Angularjs 在ReactJS组件中呈现MathML表达式,angularjs,reactjs,mathjax,mathml,Angularjs,Reactjs,Mathjax,Mathml,我希望在我的Ionic应用程序中呈现MathML表达式,我们在其中使用ReactJS。我们正在使用Mathjax库,它正确地呈现LaTex表达式,但会为MathML抛出错误 我得到下面的错误 错误:不变冲突:findComponentRoot(…,.e.2.$A, ,false.0.0):找不到元素。这可能意味着DOM发生了意外的变化(例如通过浏览器),通常是因为在使用表、嵌套标记(如,)或在父级中使用非SVG元素时忘记了。尝试检查具有React ID``的元素的子节点 我看不出有什么解决

我希望在我的Ionic应用程序中呈现MathML表达式,我们在其中使用ReactJS。我们正在使用Mathjax库,它正确地呈现LaTex表达式,但会为MathML抛出错误

我得到下面的错误


错误:不变冲突:findComponentRoot(…,.e.2.$A,

,false.0.0):找不到元素。这可能意味着DOM发生了意外的变化(例如通过浏览器),通常是因为在使用表、嵌套标记(如,)或在父级中使用非SVG元素时忘记了。尝试检查具有React ID``的元素的子节点


我看不出有什么解决办法。当我使用$sce.trustAsHtml(html_代码)在AngularJS中直接使用它时,它工作得非常好。感谢您的意见。谢谢

var MathMLReact = React.createClass({displayName: 'MathMLReact',
render: function(){
    return (React.createElement("div",null, "Hello. ",this.props.reactStuff));
}
});

添加JSFIDLE链接。

它是否适用于非常简单的表达式,比如单个变量?请包含一个最小的测试用例。您可能只需要在react之外再进一步,在componentDidMount/componentDidUpdate.com中执行mathml操作,即使在一个简单的表达式上也不行。添加了JSFIDLE链接。在使用危险的HTML后工作。请参阅JSFIDLE链接。实际上没有其他方法——您的原始示例将MathML作为文本字符串插入。但它需要是一个常规的DOM节点。您可以尝试创建MathJax自定义脚本标记--请参见