我有一种情况,我希望从子项中增加父值。
家长:
getInitialState :function(){
return {counter:0}
},
render(){
<CallChild value={this.state.counter}/>
子组件:
render(){ this.props.counter++;}
有什么建议?甚至可以做这样的事情。
答案 0 :(得分: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>
}
});