React Native - 何时调用“componentWillUnmount”?

时间:2016-06-05 21:44:54

标签: react-native

我正在使用Navigator来浏览页面。

调用Navigator.push()方法时,不会在我们导航的页面上调用“componentWillUnmount”方法。

这有点问题,因为我想取消订阅听众等等。

这是正常行为吗? 什么时候实际调用“componentWillUnmount”?

2 个答案:

答案 0 :(得分:11)

Navigator使用堆栈来管理路由。当您推送新页面时,当前页面将无法卸载,如果您从新页面弹出到当前页面,则新页面将卸载。 在其他场景中,如果基于某些规则(如isLoading或其他规则)渲染某个子组件,则componentWillUnmount方法也会在不再需要渲染时调用。

答案 1 :(得分:0)

在react-native中,未按您期望的那样调用componentWillUnmount。而是尝试在您使用的任何导航库(我们正在使用react-navigation)中使用导航生命周期。