通过react-navigation多重连接到Redux

问题描述 投票:0回答:1

想象一下在[[react-native应用程序中拥有很多数据,这些数据必须在多个组件之间进行处理和共享”。据我调查,react-navigation不会卸载旧层,因此,如果任何旧层已订阅redux,它将保持已订阅状态,因此我将对redux进行大量订阅。所以会有一些性能问题,或者我错了什么,也许有一些方法可以解决它。

有人可以提供任何建议吗?
react-native react-redux react-navigation
1个回答
0
投票
[我相信,层是指StackNavigator中的屏幕-是的,当您在当前屏幕顶部打开另一个屏幕时,这些屏幕不会被卸载。当然,当您从中退出时,它将卸载。订阅redux本身不会导致性能问题,您可以轻松地一次订阅数百个组件而不会出现任何问题。可能导致性能问题的是您处理Redux订阅的方式-例如重新加载图像,在道具更改或昂贵的渲染时发出请求。这取决于您作为开发人员来处理,通常在设计合理的应用中,底层屏幕不依赖于在其顶部打开的屏幕引起的状态更改。

[如果您仍然想玩它-看navigation.isFocused()。您可以制作一个HOC来包裹屏幕,如果屏幕不在导航焦点内,则可以将其卸载,但这可能不值得

© www.soinside.com 2019 - 2024. All rights reserved.