我正在尝试将 Mapbox ( https://github.com/mapbox/react-native-mapbox-gl ) 与 React-Native、React Redux 和 Flux Navigation 一起使用。
我将我的应用程序构建在一个模块中,其中我有一个模块搜索和映射。它的结构是这样的:
/modules
/search
/containers
SearchResults.js
/map
/containers
Map.js
在 SearchResults.js 中,我得到 10 个结果,这些结果与图像和文本一起显示。结果存储在我的 redux 存储中。我在 Map.js 和 SearchResults.js 中有 2 个按钮,它们可以在 2 个容器之间进行导航(通过 Flux 导航 Action.Map() 和 Action.SearchResults() 向前和向后)。
在 Map.js 中,我正在更新地图状态以从 searchResult 存储中接收经度和纬度。我现在面临的问题是,如果我在 SearchResults 和 Map 之间向前和向后切换,就会出现巨大的性能问题。发生这种情况是因为地图总是被重新渲染。
我试图找到使用反应生命周期方法的解决方法,但这没有帮助。我认为这没用,因为我在 2 个模块之间导航。
防止 Map.js 一直重新渲染的最佳方法是什么?