Использование библиотек¶
React Native предоставляет набор встроенных Core Components and APIs, готовых к использованию в вашем приложении. Вы не ограничены компонентами и API, поставляемыми в комплекте с React Native. Сообщество разработчиков React Native насчитывает тысячи человек. Если в Core Components and APIs нет того, что вы ищете, вы можете найти и установить библиотеку из сообщества, чтобы добавить функциональность в ваше приложение.
Выбор менеджера пакетов¶
Библиотеки React Native обычно устанавливаются из npm registry с помощью пакетного менеджера Node.js, такого как npm CLI или Yarn Classic.
Если на вашем компьютере установлен Node.js, то у вас уже установлен npm CLI. Некоторые разработчики предпочитают использовать Yarn Classic для немного более быстрой установки и дополнительных расширенных возможностей, таких как рабочие пространства. Оба инструмента отлично работают с React Native. Для простоты объяснения мы будем использовать npm до конца этого руководства.
💡
В сообществе JavaScript термины "библиотека" и "пакет" используются как взаимозаменяемые.
Установка библиотеки¶
Чтобы установить библиотеку в свой проект, перейдите в каталог проекта в терминале и выполните команду установки. Давайте попробуем это сделать с react-native-webview
:
1 |
|
1 |
|
Библиотека, которую мы установили, содержит нативный код, и нам нужно связать его с нашим приложением, прежде чем использовать его.
Связывание нативного кода на iOS¶
React Native использует CocoaPods для управления зависимостями проекта iOS, и большинство библиотек React Native следуют этому же соглашению. Если используемая вами библиотека этого не делает, обратитесь к ее README за дополнительными инструкциями. В большинстве случаев применяются следующие инструкции.
Запустите pod install
в нашей директории ios
, чтобы связать ее с нашим родным проектом iOS. Быстрый способ сделать это без перехода в директорию ios
— запустить npx pod-install
.
1 |
|
После этого пересоберите двоичный файл приложения, чтобы начать использовать новую библиотеку:
1 |
|
Связывание нативного кода на Android¶
React Native использует Gradle для управления зависимостями проекта Android. После установки библиотеки с нативными зависимостями вам нужно будет пересобрать двоичный файл приложения, чтобы использовать новую библиотеку:
1 |
|
Поиск библиотек¶
React Native Directory — это поисковая база данных библиотек, созданных специально для React Native. Это первое место, где следует искать библиотеку для вашего приложения React Native.
Многие библиотеки, которые вы найдете в каталоге, взяты из React Native Community или Expo.
Библиотеки, созданные сообществом React Native, разрабатываются добровольцами и сотрудниками компаний, которые зависят от React Native. Они часто поддерживают iOS, tvOS, Android, Windows, но это варьируется в зависимости от проекта. Многие из библиотек этой организации когда-то были основными компонентами и API React Native.
Библиотеки, созданные Expo, написаны на TypeScript и поддерживают iOS, Android и react-native-web
везде, где это возможно.
После React Native Directory, npm registry является следующим лучшим местом, если вы не можете найти библиотеку специально для React Native в каталоге. Реестр npm является окончательным источником библиотек JavaScript, но библиотеки, которые в нем перечислены, не все могут быть совместимы с React Native. React Native — одна из многих сред программирования JavaScript, включая Node.js, веб-браузеры, Electron и другие, и npm включает библиотеки, которые работают во всех этих средах.
Определение совместимости библиотек¶
Работает ли он с React Native?¶
Обычно библиотеки, созданные специально для других платформ, не будут работать с React Native. Примерами могут служить react-select
, которая создана для веба и специально нацелена на react-dom
, и rimraf
, которая создана для Node.js и взаимодействует с файловой системой вашего компьютера. Другие библиотеки, такие как lodash
, используют только возможности языка JavaScript и работают в любой среде. Со временем вы поймете это, но до тех пор самый простой способ узнать — попробовать самому. Вы можете удалить пакеты с помощью npm uninstall
, если окажется, что они не работают в React Native.
Работает ли он на платформах, которые поддерживает мое приложение?¶
React Native Directory позволяет фильтровать по совместимости платформ, например, iOS, Android, Web и Windows. Если библиотека, которую вы хотите использовать, не указана в списке, обратитесь к README библиотеки, чтобы узнать больше.
Работает ли это с моей версией приложения React Native?¶
Последняя версия библиотеки обычно совместима с последней версией React Native. Если вы используете более старую версию, вам следует обратиться к README, чтобы узнать, какую версию библиотеки вам следует установить. Вы можете установить определенную версию библиотеки, выполнив команду npm install <library-name>@<version-number>
, например: npm install @react-native-community/netinfo@^2.0.0
.