Производительность React-Navigation: сколько экранов слишком много?

Я новичок в React Native и React-Navigation. Приложение, которое я планирую, очень насыщено контентом. В нем будет несколько сотен уникальных экранов. Я хочу подключить их через React-Navigation, чтобы мой стек был довольно большим. Есть ли проблема с этой производительностью или что-то еще, что я должен иметь в виду? Я предполагаю, что экран загружается только тогда, когда пользователь обращается к нему в первый раз, поэтому начальное время загрузки приложения не должно влиять?

Спасибо!

Умерло ли Create-React-App?
Умерло ли Create-React-App?
В этом документальном фильме React.dev мы исследуем, мертв ли Create React App (CRA) и какое будущее ждет этот популярный фреймворк React.
Освоение React Native: Пошаговое руководство для начинающих
Освоение React Native: Пошаговое руководство для начинающих
React Native - это популярный фреймворк с открытым исходным кодом, используемый для разработки мобильных приложений. Он был разработан компанией...
В чем разница между react native и react ?
В чем разница между react native и react ?
React и React Native - два популярных фреймворка для создания пользовательских интерфейсов, но они предназначены для разных платформ. React - это...
От React к React Native: Руководство для начинающих по разработке мобильных приложений с использованием React
От React к React Native: Руководство для начинающих по разработке мобильных приложений с использованием React
Если вы уже умеете работать с React, создание мобильных приложений для iOS и Android - это новое приключение, в котором вы сможете применить свои...
Хуки React: что это такое и как их использовать
Хуки React: что это такое и как их использовать
Хуки React - это мощная функция библиотеки React, которая позволяет разработчикам использовать состояние и другие возможности React без написания...
0
0
50
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

На самом деле не имеет значения, какие файлы js вы создаете, но важно, когда вы:

  1. Не повторное использование вашего кода. Например, вы создаете 3 экрана, которые используют карту, поэтому он не создает файл js компонента карты отдельно, тогда сложность увеличивается, но если вы создаете файл JS для карты и повторно используете его на 3 экранах, это оптимизируется. Поэтому, если вы хотите, чтобы этот компонент можно было использовать повторно, создайте для него отдельный файл.
  2. Слишком частое использование Dimension. Я знаю, что при использовании размеров дизайн экрана является отзывчивым, но на абстрактном уровне он вычисляет высоту и ширину каждый раз для каждого экрана, поэтому это не оптимизированный способ. Поэтому попробуйте использовать сгибать, а также постарайтесь уменьшить использование Dimension. Но если вы используете Dimension с умом, это очень мощный инструмент.

3) Попробуйте использовать FastImage вместо изображения, когда вы хотите показывать изображения с помощью FlatList, Map и т. д. Короче говоря, если изображения на одном экране визуализируются более двух раз.

  1. Вы можете получить больше информации здесь: Оптимизация в React-Native

Примечание: Наконец, я хочу сказать, что вы можете создавать столько же файлов JS, но они должны быть многоразовыми, не ненужными и не повторять код.

Спасибо - это приятно слышать ? Я планировал использовать как можно больше. Я только боюсь, что количество экранов и навигация по ОС будут замедлять работу приложения. Вроде не будет ?

Twos22 20.03.2022 09:08

Если вас беспокоит навигация по многим экранам и то, как это влияет на производительность, вы можете проверить это github.com/software-mansion/react-freeze.

RodSar 20.03.2022 16:13

Вы также можете рассматривать это как улучшение производительности.

У вас есть экран. Когда вы нажимаете или перемещаетесь по новому экрану на нем. Вы можете остановить анимацию на фоновом экране. Потому что экран сзади продолжает работать. Таким образом, вы можете остановить анимацию фонового экрана.

Например, у вас есть компонент слайдера на главном экране и. Эта функция автоматического воспроизведения слайдера активна. Когда вы меняете домашний экран, вы можете отключить функцию автозапуска.

Другие вопросы по теме