我想在父组件中使用子组件内部的状态。这就是我的组件设置方式:
子:
export default class Child extends React.PureComponent {
constructor() {
this.state = {
value: "123",
};
}
updateValue(data){
this.props.updateValue(data);
}
componentWillMount(){
this.updateValue(this.state.value);
}
}
父:
export default class Parent extends Component {
constructor() {
super(props)
this.state = {
newValue: ""
};
}
updateState (data) {
this.setState(newValue: data);
}
render() {
return(
<Child updateValue={this.updateState.bind(this)}/>
)
}
}
然而,它似乎不起作用,并给我一个错误。我做错了吗?
答案 0 :(得分:1)
请记住this.setState
需要参数。您已经传递了一个密钥:值对,它不存储在数据结构中。
this.setState(newValue: data);
应该是
this.setState({newValue: data});