React native 使用nextProps.ArricryValue后如何重置它?
我正在做一个项目 我有一个叫做组件B的组件A 当屏幕B完成工作时,它调用:React native 使用nextProps.ArricryValue后如何重置它?,react-native,react-native-navigation,React Native,React Native Navigation,我正在做一个项目 我有一个叫做组件B的组件A 当屏幕B完成工作时,它调用: NavigationActions.pop({refresh: {workComplete: true}}) 在屏幕A上,我有以下代码: componentWillReceiveProps(nextProps) { if (nextProps.workComplete) { window.alert('work was completed'); } } 但是,props.workC
NavigationActions.pop({refresh: {workComplete: true}})
在屏幕A上,我有以下代码:
componentWillReceiveProps(nextProps) {
if (nextProps.workComplete) {
window.alert('work was completed');
}
}
但是,props.workComplete保持设置状态,我不确定如何取消设置,因此当此组件中的道具发生更改时,我会不断收到警报
如何重置该属性值?不确定“未设置”是什么意思,但每次道具更改时都会调用该属性,并且由于workComplete设置为true,因此它会不断提醒您。您可以将workComplete作为状态值,并执行以下操作:
componentWillReceiveProps(nextProps) {
if (nextProps.workComplete !== this.state.workComplete) {
this.setState({ workComplete: true }, () => window.alert('work was completed'));
}
}