ReactJS - 通过遍历对象创建子组件

ReactJS - Creating children components by looping through object

我有父组件和子组件。我希望父级呈现多个具有对象中指定属性的子组件。我似乎无法使渲染函数中的循环工作。

 var Inputs = React.createClass({
  propTypes: {
    type:      React.PropTypes.string,
    xmltag:      React.PropTypes.string,
    class:      React.PropTypes.string
  },
  getDefaultProps: function () {
    return { 
      type: ' text'
    };
  },
  render: function() {
    return (
      <div className={'form-element col-xs-6 col-sm-6 ' + this.props.class}>
        <label className="col-xs-12">{this.props.text}</label>
        <input className="col-xs-12" type={this.props.type} xmltag={this.props.xmltag}></input>
      </div>
      );
  },
});

 //OBJECT that needs to be rendered
 var formTags = {
  id: ["ID", "List ID", "text"],
  title: ["TITLE", "List Title", "text"],
  said: ["SAID", "SAID", "number"]
};

var InputList = React.createClass({
//PROBLEM STARTS HERE
  render: function() {
    for (var key in formTags) {
      return (
        //Not using everything from formTags
        <Inputs type="number" text={key}>
        );
    };
  },
 //PROBLEM ENDS HERE
});

ReactDOM.render(<InputList />, document.getElementById('mainForm'));

React 组件 必须只有 一个根元素,现在你正在尝试渲染多个元素,添加一个根元素,就像在示例中一样(你可以使用任何元素 <div> <p>等)

var InputList = React.createClass({
  render: function() {
    var inputs = Object.keys(this.props.tags).map(function (key) {
       return <Inputs key={ key } type="number" text={ key } />;
    });

    return <div>
      { inputs }
    </div>;
  }
});

Example