React原生导航器内存无法释放

时间:2016-09-02 03:33:03

标签: memory-management react-native navigator

我的应用程序正在使用navigatorios。每当新场景推送到堆栈时,它都没有释放内存。它看起来很直观,因为它允许你将它弹回到以前的路线。我尝试使用替换而不是推,但是,标题不会改变。

我的案子有解决办法吗? 要求:更改每条路线上的标题

编辑:

在我的应用程序中,有几个部分,每个部分都有不同的导航器标题。

<NavigatorIOS
    ref='nav'
    initialRoute={{
    component: component,
    title: title,
    }}
/>

要更改标题,我使用push来显示下一部分。 xcode中的记忆计显示它使用的越来越多。

this.refs.nav.push({
    component: component,
    title: title,
    });

答案

最后更改为使用Navigator而不是NavigatorIOS。使用替换而不是推送。

1 个答案:

答案 0 :(得分:0)

您可以在此处显示您的代码,以便我们彻底诊断您的问题吗?

无论如何,使用Navigator轻松更改每条路线上的标题,在您的根导航器组件中,定义您的路线。

const routes = {
  Movies,
  Contact
};

在renderScene方法中创建自定义组件

renderScene(route, navigator) {
    let Component = routes[route.name];
    return <Component navigator={navigator} {...route.passProps}/>
  }

正如您所看到的,renderScene方法传递了一些道具,这是您将标题传递到下一个屏幕的位置。

希望它有所帮助!