Я пытаюсь использовать Mapbox (https://github.com/mapbox/react-native-mapbox-gl) с React-Native, React Redux и Flux Navigation.mobile performance with mapbox
Я структурировал свое приложение в модульной форме, где у меня есть один модуль поиска и карты. Она построена так:
/modules
/search
/containers
SearchResults.js
/map
/containers
Map.js
В SearchResults.js я получаю 10 результатов, которые отображаются с изображением и текстом. Результаты сохраняются в моем магазине redux. У меня есть 2 кнопки в Map.js и SearchResults.js, которые позволяют перемещаться между двумя контейнерами (вперед и назад через Flux navigation Action.Map() и Action.SearchResults()).
В Map.js Я обновляю состояние карты, чтобы получить долготу и широту из магазина searchResult. Проблема, с которой я столкнулся сейчас, заключается в том, что есть серьезные проблемы с производительностью, если я переключаюсь между SearchResults и Map вперед и назад. Это происходит потому, что карта всегда переизлучается.
Я попытался найти обходное решение с использованием методов реагирования на жизненный цикл, но это не помогло. Я думаю, что это бесполезно, потому что я перемещаюсь между двумя модулями.
Каков наилучший способ предотвратить повторное рендеринг Map.js?
Спасибо большое! У меня была эта проблема, когда Map.js не был частью контейнера табуляции. После того, как он переместился на вкладку, она перестала реиндерировать. Большое спасибо! :) –