当前,我正在创建反应组件,并且我需要根据父组件的this.props.value重复子组件。
我正在努力寻找任何好的例子。

这是我的代码

var LiComponent = React.createClass({

render:function(){
    return(
        <div>
            <span>{this.props.label}</span>
            <span>{this.props.value}</span>
        </div>
    );
}


});

var StatsComponent = React.createClass({

    getInitialState: function(){
    return{
        value: this.props.value || []
    }
},

componentDidMount: function(){
    var data = this.state.value,
        columnName = data[0],
        data = data.slice(1),
        values = data.map(function (o) { return o.value; }),
        labels = data.map(function (o) { return o.label; });
},

shouldComponentUpdate: function(nextProps, nextState){

    var data = nextProps.value,
        labels = data.map(function (o) { return o.label; }),
        values = data.map(function (o) { return o.value; });
    return false;

},
render: function(){
    return (
        <div style={style}>
            <LiComponent>
            </LiComponent>
        </div>
    );
}


});

现在,我想根据Stats Component的this.props.value重复LiComponent。我该怎么办?

最佳答案

您可以将LiComponents推送到数组,然后呈现它们。

像这样,

render: function(){
var rows = this.props.value.map(function(row) {
    //Add props to your LiComponent just as you would normally.
    return <LiComponent />;
});
return (
    <div style={style}>
        {rows}
    </div>
);
}

09-28 10:19