ReactNavigation:如何在不可见时避免屏幕重新渲染

时间:2017-04-18 11:02:36

标签: react-native react-navigation

我注意到,当我在应用程序中导航时,所有屏幕都被重新渲染,即使它们不活动(可见)。唯一的例外是TabNavigator中的屏幕,LazyLoad设置为true。如果是,我如何禁止渲染i并仅在可见时触发渲染

2 个答案:

答案 0 :(得分:2)

您应该使用shouldComponentUpdate检查来自redux的数据,以决定是否需要重新渲染组件。 它使用相同的api进行反应。您可以在此处查看:https://facebook.github.io/react/docs/react-component.html#shouldcomponentupdate

答案 1 :(得分:0)

这不是反应导航工作的方式。如果它已经被垃圾收集,它会重新渲染一个组件。例如,如果您浏览太多页面并返回第一页,则会重新呈现该页面。但在另一种情况下,不会有任何重新渲染。我认为你正在改变你的屏幕道具。如果您找不到问题,请在此处提供您的代码。