道具和状态有关。一个组件的状态通常会成为子组件的道具。道具将作为第二个参数传递给父对象的render方法中的子对象,
React.createElement()或者,如果您使用的是JSX,则是更熟悉的标签属性。
<MyChild name={this.state.childsName} />父项的状态值
childsName成为子项的状态值
this.props.name。从孩子的角度来看,prop这个名字是一成不变的。如果需要更改,则父级只需更改其内部状态即可:
this.setState({ childsName: 'New name' });React将为您将其传播给孩子。接natural而来的自然问题是:如果孩子需要更改道具名称该怎么办?通常,这是通过子事件和父回调完成的。子级可能会公开一个名为的事件
onNameChanged。然后,父级将通过传递回调处理程序来订阅事件。
<MyChild name={this.state.childsName} onNameChanged={this.handleName} />子级将通过调用例如,将其请求的新名称作为参数传递给事件回调
this.props.onNameChanged('Newname'),而父级将在事件处理程序中使用该名称来更新其状态。handleName: function(newName) { this.setState({ childsName: newName });}


