变量而不是节点名称

时间:2015-10-21 21:21:55

标签: javascript reactjs react-jsx

如何在渲染中使用JavaScript变量而不是节点名来在jsx中使用?像这样:

var First = React.createClass({
  render: function() {
    var nodeName = this.props.node; // this.props.node = 'Second';
    return <{nodeName}/>;
  }
});
var Second = React.creactClass({/*...*/});

1 个答案:

答案 0 :(得分:5)

在这种情况下,不要使用JSX。

var First = React.createClass({
  render: function() {
    var nodeName = this.props.node; // this.props.node = 'Second';
    return React.createElement(nodeName);
  }
});
var Second = React.createClass({/*...*/});

这最终是JSX在编译成Vanilla JS时的结果。