1 //在父组件内 改变 state.dataSetValue 2 <Select onChange={(value) => { 3 this.setState({ 4 dataSetValue: value 5 });}}> 6 <option>1</option> 7 <option>2</option> 8 </Select> 9 10 // 将state.dataSetValue属性传给DataSetSubDirectory子组件 11 <DataSetSubDirectory 12 dataSetValue={this.state.dataSetValue} /> 13 14 // 在子组件生命周期函数componentWillReceiveProps内可以获取最新的props 15 componentWillReceiveProps(nextProps) { 16 console.log(nextProps.dataSetValue); 17 this.handelGetDataSetSubDirectory(nextProps.dataSetValue); 18 }
重点:在react的componentWillReceiveProps(nextProps)生命周期中,可以在子组件的render函数执行前获取新的props,从而更新子组件自己的state。