Мы рады выпустить новую версию React Native 0.69.0. Эта версия содержит несколько улучшений для новой архитектуры React Native и новые функции: поддержка React 18 и встроенный Hermes.



Разделы

  • Реагировать 18
  • В комплекте Гермес
  • Основные моменты 0,69



1. Реагировать 18

Мы рады сообщить вам, что React Native 0.69 — это первый выпуск, поддерживающий React 18. React 18 принес множество улучшений, таких как новые хуки, такие как useId. Кроме того, React 18 включает новые функции параллелизма, такие как useTransitionили полная поддержка Suspense.



2. Гермес в комплекте

Hermes и React Native были выпущены отдельно. Это привело к путанице в том, какая версия Hermes совместима с какой версией React Native. Чтобы исправить эту проблему, начиная с React Native 0.69, мы будем поставлять совместимую версию Hermes вместе с React Native. Внесение этого изменения сделает использование Hermes в React Native более стабильным.

Примечание: пользователи Новой архитектуры на Android должны будут собрать Hermes из исходного кода. Для сборки Hermes из исходного кода пользователям Windows потребуется дополнительно выполнить эти шаги.



Основные моменты 0,69

Как упоминалось выше, наиболее важные улучшения в этом выпуске сосредоточены вокруг поддержки React 18 и встроенного Hermes. Однако произошли и другие заметные изменения, в том числе:

  • Прекращение поддержки iOS/tvOS SDK 11.0теперь требуется версия 12.4+
  • Лучшая поддержка для пользователей M1, разрабатывающих для Android
  • Добавление нового .xcode.env файл конфигурации для более детерминированного поиска исполняемого файла узла
  • React Native теперь использует новейший API строки состояния из Android 11.
  • Поддержка для C++17
  • Новый hotkeysEnabledопция в меню отладки iOS


Критические изменения

Также было несколько критических изменений:

  • React Native CLI был переведен на новую основную версию 8.0
 1. link and unlink commands have been removed in the favour of autolinking
 2. Deprecated initCompat has been removed, use init command instead
 3. Removed deprecated run-android properties
 4. Removed install and uninstall commands
 5. Removed assets and hooks from react-native.config.js – you'll need to remove these properties from your config
 6. podspecPath was removed from the iOS dependency config
 7. Removed --project-path option from a run-ios
 8. Changed iOS source directory detection from looking for an Xcode project to looking for a Podfile
Войти в полноэкранный режим

Выйти из полноэкранного режима

  • Поддержка console.disableYellowBox прекращена.
  • Удалены уже устаревшие типы пропсов (cdfddb4dad, 3e229f27bc, 10199b1581).
  • removeListener, устаревший с RN 0.65, был удален из Appearance.
  • Если вы использовали SegmentedComponentIOS, теперь вам нужно заменить его сторонней библиотекой, например, segmented-control (235f168574)

Большое спасибо за то, что являетесь частью сообщества DEV! 🙌