В этой статье будут рассмотрены основы простого реактивного приложения. Я рассказал о том, что такое react-native, и о начальных шагах установки в предыдущей статье, так что это будет более подробный обзор некоторых общих компонентов, используемых в этой библиотеке javascript. Сначала мы рассмотрим макет файла по умолчанию при инициализации с помощью expo, а затем некоторые общие компоненты, которые импортируются непосредственно из react-native. Затем мы рассмотрим несколько удобных вариантов стиля.

Макет файла для React Native с использованием Expo

После того, как вы создали свое приложение для реагирования с помощью expo cli, вы увидите следующую файловую структуру:

Файл App.js в корне каталога проектов в настоящее время является самым верхним слоем вашего приложения, и то, на что по умолчанию реагирует первый взгляд при принятии решения о том, что отображать. Файловая структура, которую вы выбираете для нативного приложения, может сильно различаться в зависимости от личных предпочтений. На самом деле у react-native нет действительно согласованной файловой структуры. В настоящее время я предпочитаю настроить папку приложения на корневом уровне, скопировать код из App.js, создать index.js, куда будет вставлен этот код, и удалить App.js. На этом этапе, если бы я просто сосредоточился на основах, я бы создал следующие папки в этой новой папке приложения:

  • Папка assets для хранения моей папки images, в которой хранятся фотографии, которые мне понадобятся.
  • Папка components, в которой хранятся пользовательские компоненты, которые можно использовать в разных функциях. Примером может служить кнопка, которая переходит на разные экраны в зависимости от того, какие реквизиты ей переданы.
  • Папка config, в которой я бы настроил свою маршрутизацию на разные экраны, которые я сделал с помощью реактивной навигации.
  • Папка константы, где я буду хранить значения, которые нужно будет использовать в нескольких областях приложения. Примером может служить файл colors.js, который экспортирует объект с ключами, определяющими различные цвета, которые мне понадобятся.
  • Папка screens, в которой я бы определял различные экраны, к которым можно было бы перейти. Некоторыми примерами могут быть Home.js и Profile.js.

каждому из них потребуется, чтобы их относительные пути были импортированы вместе с экспортом по умолчанию для использования в другом месте. Это отличается от простого извлечения элементов из библиотеки React Native по умолчанию или библиотеки React, как показано здесь:

Если мы пойдем по относительному пути в выделенном разделе для colors, мы найдем colors.js. Это файл, который я обычно создаю для хранения различных цветов, которые я буду использовать в своем приложении. Это объект, который может выглядеть следующим образом:

Общие компоненты React Native

Если вы вернетесь к этому предпоследнему изображению во второй строке, вы увидите, что несколько компонентов импортируются из реактивной библиотеки. Есть целая куча еще, но вот некоторые полезные, которые нужно знать:

  • Вид — важный содержащий компонент, который обычно является оболочкой для других компонентов. View поддерживает удобные функции макета, такие как flex, flexDirection, alignItems и justifyContent. Он также поддерживает реквизиты доступности для мобильных устройств. Примером компонента View, используемого для центрирования изображения, может быть:

  • Text — компонент для отображения текста. который вставляется между открывающим и закрывающим тегом этого компонента. пример:

  • Изображение — компонент для рендеринга изображения. Обычно это делается с помощью самозакрывающегося тега с некоторыми дополнительными параметрами, передаваемыми компоненту. Примером отображаемого изображения, которое хранится в проекте, может быть:

И пример изображения, которое вы хотите отобразить, которое нужно получить откуда-то в Интернете, может быть следующим:

Есть еще один очень распространенный компонент, импортированный из нативной библиотеки под названием StyleSheet, о котором мы поговорим в следующем разделе.

Стили в React Native

Большинство компонентов в React Native могут получить реквизит с именем style. Обычно это указывает на объект StyleSheet, который вы определяете как стили под компонентами, которые его используют. Основным примером может быть:

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

Несколько полезных вопросов и ответов

На этом этапе у вас могут возникнуть вопросы о некоторых основных функциях, которые должны выполнять все веб-приложения. Я постараюсь сформулировать некоторые из них и дать вам ответы.

  • Вопрос: как создавать ссылки в нативном приложении React?
Answer: The Linking component.

Компонент Linking импортируется из react-native и может передавать URL-адрес через функцию openURL. Важно также включить в это функцию .catch() на случай, если URL-адрес не дает ответа 200. Из-за этого лучше всего определить функцию, которая использует импорт связывания и имеет функцию со сценарием перехвата. Что-то вроде:

Пример, относящийся к этому глупому предупреждению, которое я разместил, будет таким:

  • Вопрос: как перемещаться между созданными экранами?
Answer: Through the use of React Native Navigation

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

Заключение

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