2016-03-15 3 views
1

У меня есть ситуация, когда я хочу увеличить родительское значение от детей.Как передавать данные от детей к родителям?

родитель comonent:

getInitialState :function(){ 
    return {counter:0} 
}, 

render(){ 
    <CallChild value={this.state.counter}/> 

Детский компонент: render(){ this.props.counter++;} Любые предложения? Возможно ли сделать что-то подобное.

ответ

5

Вы можете создать метод (который изменит родительское состояние) в родительском компоненте и вызвать его в ребенка, как этот

var CallChild = React.createClass({ 
    render(){ 
    return <div> 
     <h1>{ this.props.value }</h1> 
     <button onClick={ this.props.onClick }>+</button> 
    </div> 
    } 
}); 

var Parent = React.createClass({ 
    getInitialState: function() { 
    return { counter: 0 } 
    }, 

    handleIncrement: function() { 
    this.setState({ counter: this.state.counter + 1 }); 
    }, 

    render(){ 
    return <div> 
     <CallChild onClick={ this.handleIncrement } value={this.state.counter} /> 
    </div> 
    } 
}); 

Example

Смежные вопросы