我正在使用Reactjs。我想在我的视图中包含部分html。类似于ng-include。最好的方法是什么?
<div>
<ng-include src="myPageUrl"></ng-include>
</div>
我没有运气就尝试了以下方法-得到了
'Uncaught Error: Invariant Violation: traverseAllChildren(...):
Encountered an invalid child;
DOM elements are not valid children of React components'
我的代码如下(基于http://benalpert.com/react/tips/initial-ajax.html)
var PageContainer = React.createClass({
getInitialState: function() {
return {
page: "loading page ..."
};
},
componentDidMount : function(){
$.get(url, function(result) {
var data = result;
this.setState({
page: data
});
}.bind(this));
},
render: function () {
return (
<div id="page" className="PageContainer">
{this.state.page}
</div>
);
}
});
根据React文档:
作为最后的选择,您始终可以插入原始HTML。
<div dangerouslySetInnerHTML={{__html: 'First · Second'}} />
所以对你来说可能是:
render: function () {
return (
<div id="page" className="PageContainer"
dangerouslySetInnerHTML={{__html: this.state.page}}
>
</div>
);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句