在一个项目中,我正在使用wix的RNN。在其中有一个屏幕的地方,让我们称之为“ Screen1”。屏幕1具有一个调用Navigation.push()
并移至“屏幕2”的按钮。屏幕1在componentWillUnmount()
中设置了一个警报。但是当屏幕改变时,警报将永远不会显示。
export default class Screen1 extends React.Component {
componentDidMount() {
Navigation.events().bindComponent(this);
}
componentWillUnmount() {
alert("Goodbye screen1");
}
nextScreen = () => {
Navigation.push(this.props.componentId)
}
render() {
<View style={{height: '100%', width='100%'}}>
<TouchableOpacity onPress={this.nextScreen}>
<Text>Test Button</Text>
</TouchableOpacity>
</View>
}
}
我希望在移至下一个屏幕时触发警报。但是,该组件似乎仍被挂载,因为没有触发警报,并且screen1
的componentDidMount()中有一个函数(未显示)正在从下一个屏幕执行。那么,wix如何在屏幕变化时处理组件生命周期?
答案 0 :(得分:1)