如何使用html字符串渲染react元素?

时间:2015-04-17 18:28:51

标签: javascript reactjs

var Klass = React.createClass({
  this.props.html_string = '<button>BUTTON_TEXT</button>';
  render: function(){
    return (
      <div className="wrapper">
        {this.props.html_string}
      </div>
    );
  }
});

目前{this.props.html_string}为我提供了一个文本节点。如何将其设为HTML DOM节点?

2 个答案:

答案 0 :(得分:33)

你想要的是dangerouslySetInnerHTML

https://facebook.github.io/react/tips/dangerously-set-inner-html.html

function createMarkup() { return {__html: 'First &middot; Second'}; };
<div dangerouslySetInnerHTML={createMarkup()} />

修改:你想要htmlencode字符串。

答案 1 :(得分:3)

另请注意可在服务器上使用的React.renderToString('html') - https://facebook.github.io/react/docs/top-level-api.html