我正在尝试将值从一个组件传递到另一个。这是我的父组件。
<View>
{ this.state.errors ? <ErrorNotice content={this.state.content} /> : null}
</View>
这是我的子组件
constructor(props){
super(props);
this.state = {
errorMessage : "",
visibility: false
}
}
closeErrorNotice = ()=>{
this.setState({
visibility : false
})
}
render(){
return (
<View style={styles.errorContainer}>
<Text style={styles.errorText}>
{this.props.content.errorMessage}
</Text>
<Icon
name="x"
color="#454749"
size={25}
style={styles.closeButton}
onPress= {this.closeErrorNotice()}/>
</View>
)
}
但是我正在超出最大更新深度。 我找不到错误。谁能找到错误。
答案 0 :(得分:0)
传递给onPress
时不要调用该函数。之所以会出现无限循环,是因为您要调用的函数会更新状态,从而使该函数再次被调用。您需要传递函数定义,而不是调用函数的结果。
onPress= {this.closeErrorNotice}