background top icon
background center wave icon
background filled rhombus icon
background two lines icon
background stroke rhombus icon

Скачать "React Native Crash Course for Beginners - Build 4 Apps in 14 Hours (Redux, Tailwind + More) [2023]"

input logo icon
Обложка аудиозаписи
Подождите немного, мы готовим ссылки для удобного просмотра видео без рекламы и его скачивания.
console placeholder icon
Оглавление
|

Оглавление

4:09
Getting Started
8:13
Redux
8:21
Tailwind Css
16:25
Expo Start
19:35
Set Up Tailwind Css
20:55
Tailwind Config File
21:11
Tailwind Config
23:32
Debugging
26:31
React Native Navigation
26:38
Install React Native Navigation
27:32
The Native Stack
28:05
Stack Navigator
28:38
Home Screen
29:50
Create the Home Screen
30:23
Custom Header
31:05
Set Options
33:18
Tailwind
35:58
Icons
36:02
Hero Icons
36:12
React Native Hero Icons
38:03
User Icon
39:11
Header
39:54
Search Box
40:31
Text Input
45:02
Featured Rows
52:20
Categories
52:33
Scroll View
52:43
Horizontal Scroll
54:50
Touchable Opacity
55:10
Add an Image
1:11:47
Featured Row
1:15:35
Sanity Studio
1:27:43
Environment Variables
1:28:50
Image Builder
1:29:35
Add Exception
1:31:28
Sanity Deploy
Теги видео
|

Теги видео

react
developer
reactjs
html
css
js
javascript
papa
papareact
papa-react
tutorial
frontend
webdev
dev
clone
backend
fullstack
motivation
reactnative
react-native
redux
typescript
beginner
crashcourse
Субтитры
|

Субтитры

00:00:01
и приложения для Android, использующие React Native
00:00:03
посмотри, мы собираемся приготовить еду
00:00:05
приложения для доставки, такие как Deliveroo и uber
00:00:07
приложения для социальных сетей, работающие в режиме реального времени, такие как сигнал
00:00:10
или даже приложения для знакомств, такие как Tinder, добро пожаловать
00:00:12
to the ultima реагирует на родной ускоренный курс
00:00:15
где мы собираемся построить четыре iOS и
00:00:17
Нативные приложения для Android за 14 часов
00:00:20
собираюсь изучать такие вещи, как реагирование
00:00:22
встроенный с использованием управления состоянием выставки
00:00:24
такие методы, как редукс, ты собираешься
00:00:26
научитесь использовать Tellwin 3.0, когда
00:00:28
стилизация нативных приложений, которые мы рассмотрим
00:00:30
реагировать на встроенную навигацию, мы собираемся быть
00:00:32
использование нативных элементов реагирования для повышения уровня
00:00:34
стиль вашего приложения, мы улучшим
00:00:36
функциональность ваших приложений с помощью реакции
00:00:37
родные карты, и у нас будет масса
00:00:39
классные анимации и загрузчики для вас
00:00:41
наслаждайтесь всем этим, будет работать на
00:00:43
база данных, которую мы собираемся охватить
00:00:45
Firebase версии 9, в частности
00:00:48
база данных, известная как Firestore, вы даже
00:00:50
собираюсь научиться использовать и использовать
00:00:52
API контекста реагирования, это будет
00:00:54
несколько типов аутентификации, которые вы используете
00:00:56
собираюсь научиться добавлять Google
00:00:58
аутентификация в вашем собственном ответе
00:01:00
приложения, которыми ты даже научишься
00:01:02
разверните свое приложение на выставке, которую мы собираемся
00:01:04
охватывать ряд API Google, таких как
00:01:07
Google автозаполнение API Google
00:01:10
матрица расстояний API для расчета
00:01:12
расстояние от точки а до точки б в
00:01:14
клон uber и API маршрутов Google
00:01:16
перемещаться между точкой А и точкой Б
00:01:19
на карте и, самое главное, вы
00:01:20
собираюсь узнать все мои секретные советы и
00:01:22
трюки внутри этого ускоренного курса и
00:01:25
это еще не все, ребята, которыми мы собираемся быть
00:01:26
охватывающий бонусный контент, например, как
00:01:28
используйте потрясающие контент-платформы, такие как
00:01:30
sani io и даже как запрашивать базы данных
00:01:34
использование nosql и языка запросов grok
00:01:36
который очень похож на Graphql и
00:01:39
не забывайте, ребята, если вам что-то нравится
00:01:40
об этом, и вы хотите взять свое
00:01:42
научиться переходить на следующий уровень, прийти и
00:01:44
присоединяйтесь к нам с нуля до героя с полным стеком
00:01:46
я вложил все свое сердце и душу в этот курс
00:01:48
и сообщество, и этому есть ясная причина
00:01:50
почему это разработчик номер один
00:01:51
сообщество в мире, которое мы проводим еженедельно
00:01:53
коучинговые звонки с более чем 100 часами
00:01:56
кодирование контента со все большим и большим количеством
00:01:58
контент добавляется каждый раз
00:02:00
за одну неделю мы научим вас не только
00:02:02
навыки, необходимые для хорошего программирования, но и
00:02:04
реальные навыки для прохождения собеседований
00:02:06
и получи работу своей мечты в качестве программиста
00:02:09
разработчик, если не веришь, проверь
00:02:11
ссылку сюда, алмазные участники
00:02:13
даже получить дополнительный коуч-звонок
00:02:15
каждые две недели, а также более
00:02:18
60 часов бонусного алмазного наставничества
00:02:20
контент помимо всего этого вы получаете
00:02:22
тренеры успеха внутри сообщества, чтобы
00:02:25
помочь тебе, когда ты застрянешь
00:02:26
включая меня и коучинг успеха
00:02:29
звонит каждую пятницу и всего наилучшего
00:02:31
отчасти вы присоединяетесь к мировому сообществу
00:02:34
лучшее сообщество разработчиков, которое у нас есть
00:02:36
700 участников в нашем слабом сообществе и
00:02:38
мы растем каждый божий день, и мы
00:02:40
иметь более 8
00:02:41
500 участников в нашем сообществе Discord
00:02:44
это не просто очередной курс udemy
00:02:46
что ты присоединяешься, это твое
00:02:47
всю жизнь семья разработчиков, которые
00:02:49
там, чтобы поддержать вас на протяжении всего вашего
00:02:51
карьеру разработчика программного обеспечения, поэтому, если вы
00:02:53
хочу присоединиться к нам с нуля до полного
00:02:55
стек здесь, ссылка в описании
00:02:57
это будет на экране прямо сейчас
00:02:59
заходите и присоединяйтесь к нам в пабе Fan
00:03:02
прежде чем мы перейдем к первой сборке
00:03:04
давайте поговорим о сегодняшнем видеоспонсоре
00:03:06
здравомыслие, я объединяюсь с нашими замечательными
00:03:08
друзья из sanity cms и эти
00:03:10
ребята лидеры в сфере cms
00:03:12
это одно из лучших серверных решений
00:03:14
я использовал, так что вот лишь парочка
00:03:16
причины, почему я лично рекомендую
00:03:18
зондируя ЭКМС, вы можете проявить здравомыслие
00:03:19
где бы вам ни понадобилось, будь то приложение
00:03:21
или веб-сайт, с которого он может использовать ваше приложение
00:03:23
бэкэнд, который обеспечивает платформу для
00:03:25
легко структурированный контент, что позволяет
00:03:28
не-разработчикам иметь доступ к
00:03:30
сайт, так что это означает, что если кто-то хочет
00:03:32
чтобы фактически обновить данные на вашем
00:03:33
веб-сайте они могут делать это в режиме реального времени и
00:03:36
опубликовать изменения, у них также есть
00:03:37
потрясающий набор функций для совместной работы, поэтому
00:03:40
если мне и Джею нужно поработать над
00:03:41
веб-сайт вместе, я действительно могу идти вперед
00:03:43
и увидеть, как Джей редактирует сайт вживую
00:03:45
время и публикацию изменений, которые мы можем
00:03:47
даже откатить изменения и проверить
00:03:49
различия, которые сделали друг друга
00:03:51
это действительно очень приятно, что
00:03:53
команда создала тонны API для
00:03:55
взаимодействуйте с вашим контентом и не
00:03:57
беспокоиться о новичках, они на самом деле
00:03:58
стало очень просто пойти дальше и выбрать
00:04:00
обслуживание клиентов невероятное
00:04:02
и если ты хочешь идти дальше и на самом деле
00:04:04
зайди в их сообщество и можешь идти
00:04:05
вперед и на самом деле проверить их слабину
00:04:07
канал в
00:04:08
slack.sanity.io, поэтому для начала
00:04:10
на самом деле у твоего парня очень простые ребята
00:04:12
пошел дальше и подключил тебя к
00:04:14
план с двойным усилением, это означает, что
00:04:16
какой бы бесплатный план у них ни был
00:04:18
мы пошли дальше и удвоили квоту
00:04:20
так что если вы хотите получить максимальную отдачу от
00:04:21
ваш следующий проект, тогда обязательно пойдите
00:04:23
вперед и включите его с помощью sani ecms
00:04:26
по первой ссылке в описании ты не
00:04:27
я пожалею об этом, поверь мне без дальнейшего
00:04:29
адо, давайте запустим наше первое приложение, чтобы
00:04:32
первое приложение, которое мы собираемся создать
00:04:33
это потрясающий клон доставки в этом
00:04:36
построить, ты научишься создавать
00:04:38
ваше первое приложение для iOS и Android с использованием
00:04:40
реагируйте на родной код, для которого мы будем использовать Redux
00:04:42
управлять состоянием внутри
00:04:44
наше приложение, если вы не знали Redux
00:04:46
это своего рода большое дело, и оно используется в
00:04:48
индустрия в масштабе, я собираюсь показать вам
00:04:50
как интегрировать CSS попутного ветра для создания
00:04:53
красивый интерфейс, у нас даже будет
00:04:55
куча анимации и загрузчиков внутри
00:04:58
в этой сборке мы собираемся настроить sanity cms
00:05:00
для обработки серверной части хранения данных
00:05:02
и обрабатывать все запросы и сверху
00:05:04
из этого мы собираемся развернуть это
00:05:06
бэкэнд Sanity, так что он жив до тех пор, пока
00:05:08
ваше приложение готово к запуску, мы собираемся
00:05:09
прикрывать вопросы гроков
00:05:11
язык, чтобы продолжить и подключиться к
00:05:13
серверная часть Sanity это очень похоже на
00:05:15
Graphql, так что если вы когда-нибудь слышали о
00:05:17
Graphql, то вам понравится использовать
00:05:19
с языком запросов Grok все в порядке
00:05:21
чувак, давай погрузимся
00:05:25
давай построим, наслаждайся папой, давай начнем
00:05:28
[Музыка]
00:05:30
проверьте это, ребята
00:05:32
посмотри на это
00:05:34
строить прямо сейчас
00:05:35
как будто это так чисто, я не шучу
00:05:40
у нас есть полная функциональность доставки, поэтому я
00:05:43
имею в виду, я не знаю, использовал ли ты
00:05:44
упаковка для доставки, мне она нравится, я использую ее все время
00:05:46
время, когда я заказываю еду слева направо и
00:05:48
центр, но вы, ребята, можете видеть прямо здесь
00:05:49
у нас есть веб-версия, у нас есть реакция
00:05:52
родная версия работает для iOS
00:05:54
и андроид, окей, это сработает
00:05:56
кроссплатформенный
00:05:57
одна база кода, давайте добавим
00:05:59
кое-что из нашего заказа, о, посмотри на это
00:06:01
я хочу катсу карри, может, возьму немного
00:06:03
кокс и давайте продолжим и посмотрим корзину
00:06:05
бум, красивый интерфейс, все есть
00:06:08
полностью модифицируемый, вы можете удалить
00:06:09
вещи из вашего заказа добавьте их в свой
00:06:11
порядок, у нас есть все наши расчеты
00:06:13
сделал
00:06:14
давайте продолжим и разместим их сейчас
00:06:15
ребята, вы готовы, когда я
00:06:17
ты слышишь волнение в моем голосе
00:06:19
прямо когда я нажимаю на это, посмотри, как чисто
00:06:22
анимация скоро будет правильной, поэтому мы
00:06:24
не реализовал платежные функции
00:06:26
мы просто собираемся подделать
00:06:27
оплата, но посмотри, я пойду
00:06:29
вперед и оформить заказ
00:06:30
бах
00:06:32
посмотри на это, подожди, подожди
00:06:35
о боже мой, как оно есть
00:06:38
чертовски чистый, и ты научишься, как
00:06:40
сделать все это в сегодняшнем влоге, это
00:06:42
кстати полнофункциональная карта
00:06:44
все есть, у нас есть вагга мама
00:06:46
закреплено в меню, и да, для тех из
00:06:48
ты говоришь, но разве водитель не собирается
00:06:50
забери тебя, у нас есть только три или четыре
00:06:52
часов в этой прямой трансляции, так что я закончил
00:06:54
до определенного момента, а затем все остальное
00:06:55
зависит от вас, ребята, но это будет
00:06:57
быть потрясающим проектом для вашего
00:06:59
портфолио нажми кнопку "палец вверх", но
00:07:02
это правда, честно говоря, я очень горжусь этим
00:07:04
это, и если вы, ребята, можете увидеть здесь
00:07:07
даже в Интернете это действительно работает
00:07:09
то же самое, так что тебе не нравится
00:07:11
анимации, потому что это веб-сайт или для
00:07:12
это в любом случае, и вы можете идти вперед и
00:07:14
по-прежнему пользуйтесь веб-сайтом как в обычном режиме
00:07:16
корзина делает все, что мы ожидаем
00:07:19
если вас это волнует, ребята, разбейте
00:07:21
кнопка "палец вверх" дайте мне знать в
00:07:22
комментирует прямо сейчас, кто взволнован и
00:07:25
да
00:07:26
создание этого приложения заставило меня очень проголодаться
00:07:28
большую часть времени, потому что я сижу
00:07:30
там пялится на еду 24 7. но да, я
00:07:33
подписанный закон гласит, что веб-страница и приложение священны
00:07:36
из одной базы кода, поэтому вы будете
00:07:38
сегодня изучаю React Native, так что я
00:07:40
собираюсь пойти дальше и перечислить все
00:07:42
крутые вещи, которыми мы собираемся стать
00:07:43
делаю в сегодняшнем видео, чтобы ты
00:07:45
ребята, можете идти вперед и радоваться
00:07:47
что скоро произойдет, так что я пойду
00:07:49
вперед и нарисуйте на экране вправо
00:07:50
сейчас
00:07:52
мы дали мне посмотреть, в порядке ли моя кисть
00:07:54
работаю, мы идем, экранная кисть - это
00:07:55
кисть, которой я пользуюсь, все всегда меня об этом спрашивают
00:07:57
вопрос, который мы будем изучать
00:07:59
реагируй на родной сегодня, окей, так реагируй на родной
00:08:02
это то, что питает то, что вы видите
00:08:04
экран правильный, так что это абсолютно
00:08:06
массивная сборка с использованием единого кода реагирования
00:08:08
база скомпилирует все
00:08:10
что вы, ребята, видите здесь, тогда мы идем
00:08:12
изучать Redux, потому что я тебя слышу
00:08:15
ребята, вы всегда об этом просите
00:08:16
всегда хочу узнать больше о Redux, поэтому
00:08:18
я включил Redux в сегодняшнее видео
00:08:21
также у нас теперь есть CSS попутного ветра, если
00:08:23
ты делал какие-либо из моих сборок, я знаю
00:08:25
буквально более полумиллиона из вас
00:08:28
сделали потрясающий клон uber
00:08:31
мы там используем телевизионный CSS, но
00:08:33
сегодня я обновил вещи, мы используем
00:08:35
другой модуль CSS, и на самом деле мы
00:08:37
собираюсь
00:08:38
типа перемен в болтовне, хм
00:08:40
лепетающие шаги, которые в основном позволяют
00:08:42
нам нужно сделать полный CSS попутного ветра
00:08:45
опыт работы с React Native, так что я пойду
00:08:46
чтобы показать тебе, как все это делать, хорошо
00:08:48
у нас дома есть 10 CSS
00:08:50
реагировать на навигацию, так что я просто собираюсь
00:08:51
скажи, отреагируй
00:08:53
навигация
00:08:54
ранжируйте встроенную навигацию, так что это действительно
00:08:56
реагировать на встроенную навигацию, и все будет в порядке
00:08:57
чтобы позволить нам иметь всю маршрутизацию
00:08:59
внутри наших приложений вы знаете, когда
00:09:00
модули выскакивают все это круто
00:09:02
вещи, так что прямо сейчас вы можете увидеть здесь
00:09:04
бац, что выскакивает все это, и мы
00:09:06
буду строить с помощью React Native
00:09:08
навигация у нас есть вся сборка
00:09:10
теперь питается здравомыслием
00:09:13
это видео стало возможным благодаря нашим
00:09:15
прекрасные друзья в здравомыслии
00:09:17
лучшая контент-платформа прямо сейчас на
00:09:19
планета, она чертовски мощная, так что я
00:09:21
хочу продолжить и сообщить вам, ребята
00:09:23
мы вообще-то объединились с ребятами
00:09:24
в Саники, чтобы принести вам вдвое больше
00:09:26
бесплатный план квот, поэтому, когда мы пройдем
00:09:28
сегодняшняя сборка, я хочу, чтобы ты продолжил
00:09:30
и убедитесь, что вы используете нашу специальную
00:09:32
флаг купона при настройке
00:09:34
проекты, таким образом, вы получите вдвое больше
00:09:35
бесплатная квота теперь что такое сани и как это
00:09:37
это помогает нам здесь, сегодня
00:09:39
видео, которое вы можете увидеть, у нас есть все это
00:09:41
разные рестораны на экране это
00:09:43
все динамически извлекается из
00:09:45
серверная часть Sanity, чтобы вы могли видеть все
00:09:47
рестораны стекаются сюда все
00:09:48
здесь также хранится посуда и как
00:09:50
вы можете увидеть, если мы проверим
00:09:51
рестораны прямо здесь, это известно как
00:09:53
система управления контентом, поэтому, если бы я был
00:09:55
прямо сейчас собираюсь в Вагамаму, я могу пойти
00:09:57
вперед и обновите все это по адресу
00:09:59
места, звездный рейтинг которого
00:10:01
категория, к которой он относится, а также
00:10:03
блюда, которые есть в нашем меню
00:10:05
также есть разные категории меню, так что
00:10:07
все эти категории меню прямо сейчас это
00:10:09
это то, как мы продвигаемся вперед и
00:10:11
видеть все красивые обновления пользовательского интерфейса
00:10:13
на передней части экрана, окей, так
00:10:15
действительно очень мощная вещь прямо сейчас
00:10:16
а затем последний, который на самом деле
00:10:18
приятная маленькая вишенка на торте
00:10:20
откуда у нас есть эти три раздела предложений
00:10:22
рядом с вами популярные и вкусные скидки, поэтому
00:10:24
вот как мы продолжим и перечислим
00:10:26
рестораны в каждом из этих разделов
00:10:28
правильно, поэтому мы используем
00:10:30
мы широко используем sani ecms
00:10:33
щас и все ищет
00:10:35
чертовски хорошо, делая это
00:10:37
да, в общем, если ты хочешь пойти
00:10:39
вперед и узнайте больше о звучании ECMS
00:10:41
обязательно зайдите на sani.io еще раз, так как
00:10:43
я упомянул платформу массового контента
00:10:45
действительно крутые функции в реальном времени со мной и
00:10:47
Джей работал над этим вместе, пока
00:10:48
мы делаем это, загляните на сайт
00:10:50
но ты знаешь, как нам нравится это делать
00:10:52
сегодня, но я собираюсь показать вам, как
00:10:53
используйте это, как это реализовать, вы сделали
00:10:55
это в реакции, ты не сделал этого в реакции
00:10:57
родной раньше на этом канале и сегодняшний
00:10:59
это будет новый опыт для всех
00:11:01
ты, да, у нас почти все это есть
00:11:03
что-то происходит прямо сейчас, у нас есть герой
00:11:04
значки, чтобы активировать все эти красивые
00:11:06
значки у нас есть карты в конце, например
00:11:08
ты видел, что у нас есть анимация, так что я
00:11:10
собираюсь показать вам еще одну демонстрацию
00:11:12
об этом еще раз, а потом мы
00:11:13
собираюсь приступить к сегодняшней сборке, так что я
00:11:15
пойду дальше, посмотрю в корзину, поставлю
00:11:17
закажите бац, эту прекрасную анимацию я
00:11:19
я научу тебя, как это делать, а потом мы
00:11:22
собираюсь идти вперед
00:11:23
и скомпилировать это все, построить все это так
00:11:26
таким образом вы, ребята, сможете получить это на свой
00:11:28
резюме в резюме и можете идти вперед
00:11:30
и произвести на кого-нибудь впечатление и получить следующий
00:11:32
большая работа, давай продолжим и приступим к ней
00:11:34
Итак, первое, что мы собираемся сделать, это
00:11:36
вникните в это сейчас, давайте продолжим и
00:11:38
это будет только клиентская сторона
00:11:39
приложение да, это не так, у нас есть только определенные
00:11:41
много времени на ютубе, так что это не так
00:11:42
невозможно сделать все это и
00:11:44
где, как на стороне клиента,
00:11:46
водители и все такое, так что я
00:11:47
собираюсь показать вам это сегодня, все зависит от
00:11:48
ты, если собираешься идти дальше
00:11:50
окей, давайте продолжим и прыгнем в
00:11:52
сегодняшняя сборка прямо сейчас, во-первых, я просто
00:11:54
хочу упомянуть, помни, я говорил
00:11:55
насчет пакета tss попутного ветра на всякий случай
00:11:57
тебе интересно, вот что мы собираемся сделать
00:11:58
использовать картофель и реакцию CSS
00:12:00
навигация - это то, чем мы собираемся быть
00:12:01
делаем, но мы собираемся начать
00:12:03
наш собственный проект реагирования с выставкой if
00:12:06
ты никогда не пользовался выставкой, определенно стоит
00:12:09
проверяю, строите ли вы
00:12:10
что-то вроде приложения для iOS или Android
00:12:13
когда вы используете React Native, вы можете
00:12:14
сделай это простым способом, это было любезно
00:12:17
старого школьного способа сделать это или если
00:12:18
тебе нужен абсолютный контроль над
00:12:20
все, тогда ты можешь сделать это таким образом
00:12:22
что я бы посоветовал начать с выставки
00:12:24
то есть представить это как
00:12:26
оболочка вокруг вашего реагирующего нативного приложения
00:12:28
позволяет проще использовать тренажеры
00:12:30
позволяет вам использовать э-э при компиляции
00:12:32
в сеть тоже
00:12:34
действительно потрясающий опыт, когда ты
00:12:36
разрабатываете приложение для iOS, и вы собираетесь
00:12:37
сегодня узнать, насколько это легко
00:12:39
поэтому мы собираемся пойти дальше и прыгнуть в
00:12:40
код прямо сейчас, чтобы вы могли видеть
00:12:42
мы сделали это потому, что мы
00:12:43
собираюсь остановить симулятор, пока
00:12:45
мы создаем приложение, которое у меня уже есть
00:12:46
скриншоты всего приложения, чтобы
00:12:48
как мы можем пойти дальше и построить это
00:12:50
используя их в качестве ссылки, и это
00:12:52
тоже хорошая идея, к которой можно привыкнуть
00:12:54
увидев некоторые дизайны, например, в вашем
00:12:56
план работы или фриланса, а затем мы
00:12:58
собираюсь построить это правильно, так что я
00:13:00
собираюсь показать вам, как мы все это делаем
00:13:01
классная штука, окей, так что первое, что я хочу
00:13:03
тебе нужно сделать это и сделать это
00:13:05
команда mpmi g expo cli это собирается
00:13:08
позволяют вам устанавливать инструменты scli на
00:13:10
твой компьютер, поэтому я первым делом пойду
00:13:12
нужно открыть мой терминал
00:13:13
и что мы собираемся сделать, так это то, что я пойду
00:13:15
открыть отдельный терминал и что
00:13:16
мне нравится, что ты делаешь, ребята, это всегда делается
00:13:18
уверен, что вы действительно вкладываете свой
00:13:20
вроде вы знаете свои проекты в
00:13:21
место, которое имеет смысл для меня, мне нравится
00:13:24
зайди в мои документы, которые я хотел бы добавить
00:13:26
с папкой builds все в порядке, сейчас я
00:13:28
в папке моих сборок, и я собираюсь
00:13:29
продолжайте и запустите ту команду, которую мы
00:13:30
видел раньше, так что я уже сделал это
00:13:32
прямо сейчас тебе, возможно, придется сделать это
00:13:35
перед этим введите sudo sudo sudo
00:13:38
чтобы заставить его работать правильно и что
00:13:40
попросит вашего разрешения разместить ваше
00:13:42
введите пароль, и он установит это сейчас
00:13:43
это означает, что это будет использоваться
00:13:45
как будто вы сможете использовать экспорт
00:13:47
cli в любом проекте на вашем компьютере
00:13:49
компьютер в порядке, так что давайте продолжим и
00:13:51
начать проект, что мы делаем, мы запускаем
00:13:53
mpx создайте приложение для выставки, если npx не работает
00:13:56
вам необходимо установить узел на свой компьютер
00:13:58
окей, мы собираемся сделать это
00:13:59
и мы собираемся изменить мою
00:14:00
app по названию нашего приложения, так что я пойду
00:14:02
чтобы пойти дальше и сказать Mpx Create Expo App
00:14:05
и я собираюсь просто ввести здесь
00:14:07
доставлять
00:14:08
клонировать
00:14:09
ок, доставка клон и поехали дальше
00:14:11
и нажмите Enter, так что на данный момент это
00:14:13
собираюсь раскрутить наше приложение для нас прямо сейчас
00:14:15
это создание шаблона или стартера
00:14:18
проект для нас, и он будет реализован
00:14:19
вперед и настройте все зависимости
00:14:21
все виды вещей, которые нам нужны
00:14:23
оторваться от земли, чтобы мы могли
00:14:24
начнем придумывать, что нам нужно сделать
00:14:26
окей, как я уже говорил, если это твое
00:14:28
первый раз с React Native, что ты делаешь
00:14:30
нужно знать, окей, так что реагируй, как родной
00:14:32
по сути, мы в основном используем реакцию
00:14:34
но в другой среде
00:14:36
что позволяет нам скомпилировать его в
00:14:38
ios, android и веб, ок, обычно, когда
00:14:42
мы создаем реагирующий веб-сайт с помощью Next gs
00:14:44
обычно это только для Интернета или
00:14:46
прогрессивное веб-приложение в этом случае, когда мы
00:14:47
используйте стойку Native и Expo вместе, мы
00:14:49
на самом деле идти вперед и создавать код
00:14:51
основать одну базу кода, которая компилируется
00:14:53
на все три платформы, вот почему
00:14:55
это естественная реакция, а не обычная
00:14:58
обычная реакция, концепции все еще
00:15:01
очень похоже, ты вполне можешь пойти
00:15:02
вперед и использовать
00:15:04
переключаться между ними очень легко, окей, так что
00:15:06
мы пошли дальше и сделали то, что мы
00:15:07
собираюсь перейти в клон доставки
00:15:09
прямо сейчас, и я хочу набрать
00:15:10
в кодовой точке, и это откроется
00:15:12
мой код vs на моем экране прямо сейчас и
00:15:15
позвольте мне настроить стартер
00:15:17
проект в порядке
00:15:18
и что я хочу сделать сейчас, мне просто нравится
00:15:20
чтобы привести в порядок свое окружение, так что
00:15:22
таким образом, мы не такие, как ты знаешь
00:15:23
здесь слишком много возишься, так что я
00:15:25
собираюсь пойти дальше и перенести это на
00:15:26
отдельный экран, который мы можем закрыть
00:15:28
это если ваша команда с кодовой точкой не сработала
00:15:30
работа, я настоятельно рекомендую вам пойти в vs
00:15:32
кодируйте команду Shift p и введите
00:15:34
магазин, и вы получите установку, я
00:15:36
используя бета-версию, поэтому
00:15:38
говорят инсайдеры кода, но вы также говорите
00:15:39
установите команду кода и путь, а затем
00:15:41
ты можешь использовать эту команду, окей
00:15:43
так быстрое введение в какой шаблон
00:15:46
мы только что продвинулись вперед и нас подготовили
00:15:48
правильно, так это работает: у нас есть
00:15:49
app.js, который сейчас является нашей отправной точкой
00:15:52
как вы можете видеть, мы используем пакет mp
00:15:54
зафиксируйте вправо, поэтому я предпочитаю использовать пряжу, но
00:15:56
все в порядке, ты можешь использовать что угодно, черт возьми
00:15:57
ты хочешь, это не имеет значения, пока
00:15:59
ты просто придерживаешься одного из них, окей
00:16:01
то, что мы собираемся сделать, это то, что я
00:16:02
нужно запустить это приложение, хорошо, так что
00:16:04
способ запуска - это команда J, поднимите мой
00:16:05
терминал и что я хочу, чтобы вы, ребята, сделали
00:16:08
введите «Начать выставку сейчас»
00:16:11
прежде чем я запущу это, я отрежу
00:16:12
мой старый симулятор, который работал, но
00:16:14
раньше, так что это на самом деле будет
00:16:16
остановить мой сервер от запуска Ctrl C, чтобы сделать
00:16:19
это, а затем я собираюсь пойти дальше и
00:16:20
просто сделай это на весь экран, вот это
00:16:22
теперь наш эталонный вид, вы знаете
00:16:23
экран, и вот что я собираюсь сделать:
00:16:25
введите начало выставки для моего проекта, окей
00:16:28
вот что это сделает, так это раскрутит
00:16:30
так что теперь вы можете видеть здесь, мы поняли это
00:16:32
qr-код и что действительно круто, ребята
00:16:35
это если ты скачаешь
00:16:36
ой, если вы загрузите выставку, перейдите на свой
00:16:39
с телефоном все в порядке, так что буквально просто пользуюсь
00:16:41
обычная выставка загрузок с телефона, Go That QR
00:16:44
код, который вы видите на экране
00:16:45
все, что вам нужно сделать, это отсканировать его, пока
00:16:47
вы находитесь в одной сети Wi-Fi и вы
00:16:50
можете программировать и буквально разрабатывать на своем
00:16:53
настоящий телефон или ваше устройство, так что это
00:16:55
здорово, если у тебя есть окна и ты хочешь
00:16:57
например, чтобы создать приложение для iOS, вы можете
00:16:59
используй свой iPhone, чтобы идти вперед и быть своим
00:17:01
инструмент разработки, так что это абсолютный
00:17:03
переломный момент
00:17:04
действительно очень классная вещь, ладно, теперь
00:17:06
Я хотел, чтобы вы обратили внимание на это
00:17:07
это, чтобы вы могли видеть, что получается
00:17:09
здесь куча вещей, теперь можешь идти
00:17:11
вперед и откройте это в своем сафари
00:17:13
или Chrome, но мне нравится использовать
00:17:15
CLI как мой инструмент, когда я
00:17:17
кодирование, поэтому, если вы когда-нибудь потеряете это право
00:17:19
нажмите знак вопроса и он покажет вам
00:17:21
все возможности, которые у вас есть на вашем
00:17:23
экран, чтобы вы могли видеть, открыто на iOS, открыто
00:17:25
в сети и тому подобное, я
00:17:27
собираюсь пойти дальше и нажать i
00:17:29
и это откроется на iOS, если вы
00:17:30
вы на Mac, вы можете сделать это или можете
00:17:32
используйте Android, если вы используете Windows, но
00:17:34
тебе придется установить, у тебя есть
00:17:36
по сути открыть xcode на Mac, чтобы
00:17:38
иди и настрой симулятор, эээ
00:17:40
просто установите один раз, откройте xcode
00:17:43
согласитесь на все, что вас просят, а затем
00:17:45
ты получишь доступ к симулятору, хорошо
00:17:47
и тогда ты сможешь вращаться
00:17:48
создайте свой собственный симулятор, то же самое с Windows
00:17:50
но вам может потребоваться установить Java
00:17:51
окружающая среда, в противном случае вы можете идти вперед
00:17:53
и нажмите w, чтобы продолжить и открыть
00:17:56
в Интернете, но сейчас мы собираемся пойти
00:17:58
вперед и просто сделайте это на iOS, так что я
00:18:01
собираюсь пойти дальше и посмотреть open open на ios
00:18:02
я нажимаю клавишу i и там написано открытие
00:18:05
iphone, так что я хочу, чтобы ты сейчас сделал
00:18:07
давай, я принесу свой телефон
00:18:09
к нашей базе кода здесь
00:18:12
хорошо, теперь я хочу, чтобы ты сделал, если ты
00:18:14
когда-нибудь попадете в такую ​​ситуацию, когда это
00:18:16
типа не отвечает или вот так
00:18:18
вроде как вы знаете настройку, например, я
00:18:20
нажимаю ios и ничего не происходит
00:18:21
говорит, что отключен от метро, ​​нажмите R, чтобы
00:18:24
обновите и, как видите, у меня есть
00:18:26
очистите соединение, и идет загрузка
00:18:28
пакет javascript, и вы можете увидеть
00:18:30
что он делает, так это строит это
00:18:31
Bundle, поэтому моя база кода сейчас компилируется
00:18:34
в базу кода iOS, и вот как
00:18:36
оно загрузится на iPhone, окей
00:18:39
так что единственная разница в том, что мы действительно
00:18:40
иметь здесь, а не использовать вещи
00:18:42
как и в случае с div, мы вместо этого используем право просмотра
00:18:45
это очень похоже
00:18:46
простые различия здесь, вот и все
00:18:48
потому что это представление будет скомпилировано
00:18:50
в div в Интернете, это будет
00:18:52
скомпилировать до соответствующего
00:18:54
контейнер на iPhone и
00:18:55
подходящий контейнер для андроида
00:18:57
устройство, поэтому мы делаем то, что делаем с
00:18:59
реагировать на родной язык, окей, так что командуй j, мы можем
00:19:01
спрячь это, теперь ты видишь, что у нас есть наши
00:19:03
приложение запущено и работает справа, так что это
00:19:04
это отличная отправная точка для первого
00:19:06
единственное, что я хочу сделать, это то, что я действительно собираюсь
00:19:07
чтобы избавиться от таблицы стилей здесь
00:19:09
так что ты можешь стилизовать вот так, мне не нравится
00:19:12
я собираюсь использовать CSS попутного ветра, это мой
00:19:14
что делать в такой ситуации, я пойду
00:19:16
избавиться от этого прямо здесь и сейчас
00:19:19
вопрос может быть естественным
00:19:21
ну как, черт возьми, мы на самом деле идем
00:19:22
вперед и начните с реагирования на родной код, теперь это
00:19:25
там, кстати, его нет
00:19:26
исчез, как, черт возьми, мы идем
00:19:28
вперед и начни это прямо сейчас, так что
00:19:29
пока я просто оставлю это
00:19:30
там, пока я приведу это в порядок
00:19:32
и тогда мы сможем продолжить и проверить это
00:19:34
и что я хочу, чтобы ты сделал в первую очередь
00:19:35
сначала мы настроим попутный ветер
00:19:37
css в наше приложение, хорошо, я пойду
00:19:39
вперед и получить все на экране
00:19:40
теперь мы собираемся использовать CSS попутного ветра
00:19:43
реагировать на эту библиотеку прямо здесь, так что
00:19:45
ребята, я хочу, чтобы вы напечатали
00:19:47
просто введите npm install Tailwind CSS
00:19:50
реагируй, родной, окей, если ты пойдешь в э-э
00:19:53
установку, вы действительно можете продолжить
00:19:54
и проверь все, и это будет
00:19:56
подари тебе немного хорошего и сильного
00:19:57
инструкция по установке прямо так в
00:19:58
в этом случае, как вы можете видеть, мы действительно собираемся
00:20:00
нужны две вещи, которые нам понадобятся
00:20:01
CSS попутного ветра, и это
00:20:03
зависимость от разработчиков, потому что мы не
00:20:06
хочу, чтобы это было в производстве, но
00:20:07
я собираюсь скопировать эти две строки и
00:20:08
мы собираемся пойти дальше и вытолкнуть это
00:20:10
в нашу кодовую базу прямо сейчас, я просто
00:20:11
собираюсь переместить вещи, потому что
00:20:13
прямо сейчас у меня нет нужных настроек
00:20:15
я хочу этого, и поехали, давай, Джей
00:20:17
так что, пока у нас есть упаковщик, я здесь
00:20:20
собираюсь открыть там второй терминал
00:20:23
вот как мне нравится это делать, и я
00:20:25
собираюсь сказать, хм, вставь это, поэтому я вставляю
00:20:27
эти две строки, поэтому мы устанавливаем
00:20:28
toe и css и скажите ncss отреагировать
00:20:31
родной, окей, так что на данный момент мы
00:20:34
собираюсь продолжить, и это установлено
00:20:35
так что прикажи J, чтобы спрятать это, и я пойду
00:20:37
чтобы показать вам, как мы обычно это делаем сейчас
00:20:39
ты знаешь, это просто срабатывает
00:20:41
сзади справа обычно вы устанавливаете это
00:20:42
чушь, это просто волшебным образом работает
00:20:45
вместо этого мы сейчас собираемся сделать то, что мы
00:20:46
на самом деле просто нужно сделать немного
00:20:48
афера
00:20:49
здесь какой-то дополнительный шаг, и что
00:20:51
я хочу сделать, это сначала я хочу пойти
00:20:54
наш файл конфигурации попутного ветра, так что попутный ветер
00:20:58
требуется файл конфигурации, и это на самом деле
00:20:59
идем вперед, и оно должно было прийти
00:21:01
это подготовило это для нас, давайте
00:21:04
взгляд
00:21:05
думаю, в прошлый раз так и было, окей
00:21:06
интересно, мы все равно можем это сделать, так что я
00:21:08
собираюсь пойти дальше и создать файл сейчас
00:21:10
поэтому создайте файл на верхнем попутном ветру
00:21:12
config и то, что я хочу сделать здесь, это
00:21:14
просто скопируйте это вот так, окей, так что я
00:21:17
просто собираюсь пойти дальше и вставить это
00:21:19
вот так и вставьте это в "хорошо, что мы этого не делаем"
00:21:22
нужно что-нибудь еще здесь, так что это красиво
00:21:24
и так хорошо, а потом нам нужно добавить
00:21:26
нечто, называемое поставщиком попутного ветра
00:21:28
в наше приложение, хорошо, и что я собираюсь сделать
00:21:30
сделать сейчас, это на самом деле идти вперед, и я сделал
00:21:34
на самом деле сделай это немного по-другому
00:21:35
как я это сделал в прошлый раз, я думаю
00:21:38
хм, я хочу сделать пузырь, как я думаю
00:21:41
потому что это классный способ
00:21:42
делаю это, хм
00:21:44
вместо этого да, ладно, давай попробуем это правильно
00:21:46
так что я собираюсь пойти дальше и
00:21:48
сначала перейдите к нашему коду, чтобы
00:21:50
babble.config.js, я собираюсь скопировать это
00:21:53
плагин прямо здесь
00:21:55
так что сюда, и я собираюсь вставить это
00:21:57
вот так скажи мне, что CSS реагирует на родной пузырь
00:21:59
хорошо
00:22:00
тогда то, что я собираюсь сделать, это ты можешь видеть
00:22:02
после этого начального шага мы даже не
00:22:04
нужно добавить что-нибудь еще, окей, сейчас
00:22:07
что мы можем сделать, так это использовать
00:22:08
имена классов, как обычно
00:22:12
внутри нашего кода, так что это
00:22:14
что в этом такого крутого, так что
00:22:15
если вы все настроили правильно, теперь всплывет пузырь
00:22:17
по сути это будет похоже на шаг
00:22:19
прежде чем он двинется вперед и построит
00:22:20
пакет, который заменит CSS
00:22:22
имена классов — это все хорошие вещи, так что давайте
00:22:24
проверьте это и посмотрите, дало ли это что-нибудь
00:22:26
если я введу название класса, ой, фамилия
00:22:28
и что я хочу, чтобы вы, ребята, имели в виду
00:22:30
вот
00:22:31
у тебя должен быть попутный ветер
00:22:33
расширение intellisense css, так что имейте это
00:22:37
расширение, оно улучшит вашу жизнь
00:22:38
проще, когда мы используем это право
00:22:40
так что давайте напечатаем что-нибудь
00:22:42
как текст красный
00:22:43
500 и посмотрим, правильно ли это работает.
00:22:47
текст красный 500, давайте перезапустим наш
00:22:49
упаковщик, потому что мы уже ушли
00:22:50
вперед, и мы изменили конфигурацию Babel, чтобы вы
00:22:53
вижу, что он говорит, перезагрузите сервер, чтобы
00:22:55
обслуживать новые результаты, поэтому всякий раз, когда вы
00:22:57
измените что-нибудь вроде конфигурации Babble
00:22:58
тебе придется остановить свой сервер
00:23:00
и перезапустите его снова, чтобы начать выставку и
00:23:03
ты найдешь таких парней, естественно
00:23:05
когда ты пишешь код внутри, реагируй
00:23:07
родной, это будет что-то вроде
00:23:10
у тебя будет гораздо больше видов
00:23:11
тебе понадобится гораздо больше терпения
00:23:13
скажем так, я просто честен
00:23:14
с тобой нужно немного больше
00:23:15
терпение, но оно того стоит, так что
00:23:17
я нажму r, чтобы обновить, и это
00:23:19
пересоберу пакет и посмотрим,
00:23:21
мы получим красный текст, поэтому напиши прямо сейчас
00:23:24
работает не так, как мы ожидали
00:23:26
это хм, давайте просто погрузимся в это
00:23:28
еще немного, поэтому сначала я собираюсь
00:23:30
избавься от этого и посмотрим, что мы
00:23:32
собираюсь немного отладить
00:23:33
прямо сейчас, так что давай избавимся
00:23:34
нашего стиля
00:23:36
и типа так ладно, значит не работает правильно
00:23:40
хм, небольшая путаница, но мы
00:23:43
исправлю, мне все равно это нравится, мы
00:23:45
буквально начиная с небольшого
00:23:46
отладка, все хорошо, мне это нравится
00:23:48
да, у нас есть, я просто проверяю
00:23:50
через мои плагины все хорошо
00:23:53
конфигурация babble, давайте проверим
00:23:55
из нашей конфигурации лепетания, так что
00:23:57
здесь у нас есть кэш API true и
00:24:00
когда мы в родном пузыре, окей
00:24:03
и что нам нужно сделать
00:24:05
давайте проверим
00:24:07
шаги установки еще раз, поэтому
00:24:10
мы получили
00:24:12
наша дополнительная настройка здесь, давайте
00:24:14
давай, так что, возможно, мне нужно завернуть это в
00:24:16
предложение, я думаю, что уже сделал это
00:24:18
теперь ох нет, ладно, моя вина, моя вина, я пропустил
00:24:20
самый большой шаг, ладно, давайте пробежимся
00:24:22
в app.js
00:24:24
и нам нужно, очевидно, да, моя глупость
00:24:27
ошибка, нам нужно обернуть весь
00:24:29
приложение в
00:24:30
провайдер, так что это более высокий порядок
00:24:32
шаблон компонента, поэтому поставщик попутного ветра
00:24:34
оберните все приложение этим попутным ветром
00:24:37
провайдер, окей, сейчас
00:24:40
как только мы это сделаем, нам стоит посмотреть, сможем ли мы
00:24:43
вперед, продолжать
00:24:45
эм, позволь мне продолжить и освежить информацию
00:24:47
теперь это правильно, так что командуй j
00:24:50
р, чтобы обновить
00:24:52
Давайте посмотрим
00:24:53
хорошо, текст красный, хм, это интересно
00:24:56
почему мы этого не получаем
00:24:57
все в порядке, провайдер попутного ветра работает
00:25:00
все хорошо
00:25:02
давай начнем сейчас же, потому что у меня есть
00:25:03
на самом деле полностью изменил ситуацию
00:25:05
я просто пойду и проверю
00:25:06
правильно, у нас есть экспорт модулей
00:25:08
потрясающая вещь
00:25:09
э-э, у нас есть конфигурация пузыря
00:25:11
хорошо, и давайте просто проверим наши
00:25:13
зависимости, чтобы убедиться, что
00:25:15
все устроено так, как мы
00:25:16
ожидал, что это будет
00:25:18
у нас есть 101 CSS и попутный ветер
00:25:20
реагировать на родном, классная штука, окей
00:25:23
мне вообще-то очень нравится отладка, так как
00:25:24
это стресс в прямом эфире, потому что
00:25:27
это показывает вам, ребята, реальность
00:25:29
на самом деле кодирование правильно, когда что-то не так
00:25:30
все время работаю, дела идут плохо
00:25:32
мне просто не нравится, когда мы не можем понять
00:25:33
это из
00:25:35
окей, на этом этапе небольшая ошибка, давай
00:25:37
выясните, что происходит, и настройте
00:25:38
компиляция
00:25:41
это закончилось болтовней, мы сделали это
00:25:43
уже так
00:25:44
давайте просто пройдемся еще раз
00:25:47
да, мы уже это сделали
00:25:49
экспорт модулей, мы это уже сделали
00:25:52
также
00:25:54
страницы экранов о боже мой окей мой плохой
00:25:57
да, вот причина, почему это так
00:25:59
происходит потому, что сейчас мы не
00:26:01
таргетинг на любой из правильных файлов, окей
00:26:03
так что моя ошибка, поэтому на данный момент мы
00:26:06
нужно сделать, мне нужно представить
00:26:08
понятие экранов правильное, что означает
00:26:09
мы собираемся представить React Native
00:26:11
и навигация, а потом что она будет делать
00:26:14
будет ли он искать эти файлы, чтобы экраны
00:26:18
компоненты страниц, а затем все пойдет
00:26:20
вперед и фактически скомпилировать этот файл
00:26:24
в, если у нас есть, если он найдет CSS попутного ветра
00:26:27
код там он скомпилирует его так
00:26:28
это имеет смысл, и что теперь
00:26:30
мы собираемся сделать, это я собираюсь
00:26:31
представить реагирующую нативную навигацию, поэтому
00:26:33
это действительно получится неплохо
00:26:35
довольно хорошо, по крайней мере, мы знаем
00:26:37
проблема на этом этапе, мы собираемся установить
00:26:39
реагировать на встроенную навигацию
00:26:41
окей, на самом деле это очень просто сделать
00:26:43
мы собираемся пойти сюда на наш второй
00:26:45
Терминал
00:26:47
и мы продолжим и принесем это
00:26:48
справа, поэтому мы пошли вперед и
00:26:50
установил, что следующий шаг — идти вперед
00:26:52
и поскольку мы используем Expo Management Pro
00:26:54
проект, который мы собираемся продолжить и использовать
00:26:55
специальная выставочная команда, чтобы сделать жизнь
00:26:57
немного проще, поэтому мы собираемся
00:26:59
установить все зависимости, которые мы
00:27:00
необходимо установить два совместимых SDK
00:27:02
версии потрясающие вещи, у нас есть это и
00:27:04
тогда нам нужно идти вперед и
00:27:06
потому что мы сделали выставочный проект, мы не делаем
00:27:08
нужно сделать второй правильно, чтобы мы
00:27:10
можно пропустить это и как вы
00:27:12
Видишь, мы следуем этому образцу
00:27:13
упаковка всего приложения в
00:27:14
навигационный контейнер, и что я теперь
00:27:16
собираюсь сделать, это перейти наверх импорта
00:27:18
мой навигационный контейнер, поэтому у нас есть
00:27:20
навигационный контейнер теперь навигация
00:27:22
контейнер в основном будет тем, что
00:27:24
активирует встроенную навигацию по реагированию
00:27:26
что позволит нам иметь разные экраны внутри нашего приложения, окей
00:27:28
Итак, затем перейдем ко второму экрану, который мы
00:27:31
придется ввести что-то под названием
00:27:33
родной стек, хорошо, как только ты это получишь
00:27:35
настройка завершена, на самом деле это довольно просто, так что
00:27:38
мы собираемся установить это в наш
00:27:39
проект, и все, что вам нужно сделать, это пойти
00:27:42
вперед и импортируйте следующее, поэтому
00:27:45
я собираюсь перейти к вершине своего
00:27:46
импортировать файл, что-то под названием «создать»
00:27:48
встроенная навигация по стеку и все это
00:27:50
на уроке здесь, так что я
00:27:53
хотел бы показать вам, как именно мы
00:27:55
возьмите его тоже, так что вы, ребята
00:27:56
можешь ли ты запомнить это, ты можешь любезно
00:27:58
вернуться, сделай это сам, когда
00:28:00
ты готов, хорошо, так что давай продолжим и
00:28:01
мы получили стопку здесь, а потом что
00:28:03
ты делаешь, это, по сути, у тебя что-то есть
00:28:05
называется навигатором стека с разными
00:28:07
экраны в порядке, так что я собираюсь идти дальше
00:28:09
и вставьте наш первый навигатор стека, чтобы
00:28:11
мы собираемся пойти дальше и избавиться от
00:28:12
все это
00:28:13
избавься от этого избавься от этого стиля
00:28:16
сюда, давай, Джей, а потом мы
00:28:18
собираюсь вставить это вот так, я просто собираюсь
00:28:20
закрой это, окей, а теперь внутри
00:28:22
вот здесь у нас есть наши экраны
00:28:24
да, не обращай внимания на ошибки прямо сейчас, это
00:28:26
просто говорю, что мы не можем найти ничего
00:28:27
экраны в порядке, так что первый пример
00:28:29
экран будет домашней страницей, окей
00:28:32
так что это будет главный экран, так что
00:28:34
я собираюсь скопировать это сюда прямо
00:28:36
и то, что мы собираемся сделать, это прямо сейчас
00:28:38
мне нужен главный экран, такой, какой нам нравится
00:28:40
разместить наши папки внутри реакции
00:28:41
родной обычно у нас есть папка по адресу
00:28:44
верхний уровень, называемый экранами, а затем
00:28:46
внутри у нас есть наш экран
00:28:47
компоненты, поэтому в данном случае homescreen.js
00:28:50
и я использую что-то под названием «реакция»
00:28:52
собственные фрагменты, поэтому в этом случае я бы
00:28:53
нравится всем идти вперед, пауза
00:28:55
вы сами идите и разберитесь в этом правильно
00:28:57
теперь re es7 реагирует на Redux реагирует на родной
00:29:00
фрагменты, ок, установи это расширение
00:29:02
это поможет тебе реагировать на родной язык
00:29:04
функциональный компонент, который мы можем экспортировать
00:29:06
вот и все, теперь у нас есть главный экран
00:29:08
окей, теперь я пойду вперед и пойду
00:29:10
вернусь к нему сюда, и я пойду в
00:29:12
конец управления главным экраном
00:29:13
Пробел, и я могу сделать это следующим образом и
00:29:15
как вы можете видеть, я получаю первый экран
00:29:18
наше приложение, оно потрясающее, оно выглядит красиво
00:29:20
хорошо, у нас есть главный экран
00:29:22
успешно, теперь пойдем, поехали
00:29:24
дважды проверьте наш CSS попутного ветра, надеюсь
00:29:26
все хорошо, скрестим пальцы, давай сделаем
00:29:28
текст имени класса красный 500. и эй
00:29:33
это работает потрясающе, ребята, посмотрите на это
00:29:35
у нас внутри работает CSS попутного ветра
00:29:37
реагировать на родной язык буквально с именами классов
00:29:40
окей, значит все настроено правильно
00:29:42
теперь у нас действительно есть CSS попутного ветра
00:29:44
настроено, у нас есть собственная реакция
00:29:46
навигация уже установлена, поэтому первая сделка
00:29:49
дело в том, что мы собираемся идти вперед и
00:29:51
создайте главный экран, окей, так что мы
00:29:53
собираюсь пойти дальше и на самом деле настроить
00:29:54
главный экран, посмотрите все это
00:29:56
красиво, и тогда мы сможем просто
00:29:58
собрать все воедино, так как нам нужно получить каждый
00:30:00
шаг сделан, и первое, что я хочу от тебя
00:30:02
ребята, на чем стоит сосредоточиться
00:30:04
я собираюсь пойти дальше и на самом деле потянуть
00:30:05
это слева от меня, чтобы мы могли использовать
00:30:07
это как ссылка, а теперь то, что мне нравится
00:30:10
просто представьте, что у нас есть клиент
00:30:11
у них есть, они дали нам немного
00:30:13
проекты, которые мы собираемся продолжить, и
00:30:15
на самом деле, как бы ты знаешь, вернись и
00:30:17
от замыслов к реальным
00:30:18
правильное производство, мы это получим
00:30:20
работать так, как мы хотим, в первую очередь
00:30:21
я хочу сделать, это мне не нужен этот заголовок
00:30:23
мне нужен собственный заголовок, который ты видишь, как я
00:30:25
хочу, чтобы это выглядело так, как я хочу, я
00:30:26
не хочу реакции по умолчанию и
00:30:28
навигационный заголовок, так, как мы делаем
00:30:30
то есть нам нужен доступ к навигации
00:30:32
возражаю, поэтому первое, что я собираюсь сделать, это
00:30:34
используйте удобный небольшой навигационный крючок
00:30:37
это дает мне доступ к навигации
00:30:38
возражаю, теперь я могу сделать что-нибудь
00:30:41
называется эффектом макета использования, что это такое
00:30:43
это значит, как только на экране
00:30:45
монтируется так, как только появляется экран
00:30:47
на экране
00:30:49
сделай что-нибудь, ладно, так вот что это
00:30:51
небольшой фрагмент, вы можете предоставить некоторые
00:30:53
зависимости, что означает, что он сделает это
00:30:55
первоначальная сумма и всякий раз, когда какой-либо из
00:30:57
переменные внутри этого массива, хм
00:30:59
вид массива зависимостей изменится
00:31:00
повторно выстрелить, но в данном случае, что я
00:31:02
собираюсь сделать, я скажу
00:31:04
навигация
00:31:05
параметры установки точек, окей, и что это даст
00:31:08
ребята, это позволяет мне идти вперед и
00:31:11
измените вид по умолчанию, который вы знаете
00:31:13
например, если я хочу изменить
00:31:15
заголовок здесь, я думаю, что смогу сделать
00:31:17
то же самое и сказать, что тестирование
00:31:19
нажмите «Сохранить», и, как вы видите, все изменится.
00:31:21
параметры навигации правы, поэтому один из
00:31:24
те вещи, которые я могу сделать, это то, что я могу
00:31:25
на самом деле скажи не показывай мне заголовок
00:31:27
верно, значит, показанный заголовок на самом деле идет
00:31:29
быть ложным
00:31:30
на самом деле это то, чего я хочу, окей, это
00:31:32
на самом деле то, что я хочу сейчас, это
00:31:34
позволю нам сделать то, что нам нужно сделать
00:31:35
следующий, окей
00:31:37
так что теперь мы можем что-то построить
00:31:39
теперь, очевидно, вы можете видеть, что он растет
00:31:40
в опасную зону, окей, на этом
00:31:43
укажите, что я собираюсь сделать, это использовать
00:31:45
так называемый вид на безопасную зону, окей
00:31:47
теперь я хочу, чтобы ты был осторожен, когда мы
00:31:49
импортировать вещи внутри реагирующего нативного вас
00:31:51
получить множество различных потенциальных импортных товаров
00:31:53
правильно используйте нативную версию реакции от make
00:31:56
это привычка, так что есть несколько
00:31:58
реагентный вариант, как правило, правильный
00:32:00
окей, нажмите «Сохранить», и теперь вы увидите
00:32:02
вид на безопасную зону, так что это действительно будет
00:32:04
убедитесь, что это в основном толкает его
00:32:07
в реальную видимую область и даже
00:32:09
здесь внизу безопасный вид практически обрезан
00:32:12
выключен в тот момент и в тот момент, так что нет
00:32:13
неважно, какой телефон, он позаботится об этом
00:32:15
он идет вперед и все в порядке
00:32:17
невероятные невероятные вещи разбивают
00:32:19
кнопка "палец вверх" давайте продолжим это делать
00:32:21
ладно, давай продолжим и займемся телефоном
00:32:24
Итак, главный экран
00:32:25
первое, что я хочу сделать, это пойти дальше и
00:32:27
начни с этого, как нам нравится, я
00:32:28
собираюсь добавить комментарий и
00:32:30
в основном я собираюсь это построить
00:32:32
заголовок прямо сейчас, окей, поэтому первым делом я
00:32:35
хочу сделать это посмотреть
00:32:37
ой, вид, и внутри моего взгляда я
00:32:40
собираюсь пойти дальше и иметь
00:32:42
это изображение, поэтому у нас будет это
00:32:44
изображение, то нам придется доставить
00:32:45
теперь с текущим местоположением все в порядке, так что я
00:32:48
у меня будет тег изображения и изображение
00:32:50
теги самозакрывающиеся в React Native we
00:32:53
можно импортировать его из реакции нативного и
00:32:55
мы определяем тег изображения следующим образом:
00:32:57
что-то под названием источник, вот так
00:32:59
это не src и не родная реакция
00:33:01
исходный код, и здесь мы можем передать URI
00:33:03
и что я сделал, так это сократил
00:33:04
URL-адреса для вас, ребята, так что это действительно легко
00:33:06
чтобы ты скопировал, и все готово
00:33:09
это источник изображения, а затем
00:33:11
я собираюсь пойти дальше и придать этому стиль
00:33:12
с некоторым попутным CSS сейчас, если вы никогда
00:33:14
используйте CSS попутного ветра, не волнуйтесь, это
00:33:16
довольно просто, ну, вперед
00:33:19
попутный ветер
00:33:20
css.com, и, по сути, вы должны быть
00:33:23
первое, что ты видишь, ты уходишь, просто
00:33:25
давай, сначала просто дай это
00:33:26
право на чтение, которое они дают, они делают очень
00:33:28
хорошая работа, показала тебе, что это такое
00:33:29
способен на самые разные виды
00:33:31
примеры имен классов, как это можно
00:33:32
кардинально изменить внешний вид и
00:33:34
ощущение приложения, поэтому в данном случае мы
00:33:35
собираюсь пойти дальше и сделать h7 максимум из 7
00:33:38
ширина 7, и мы собираемся пойти и сказать
00:33:40
фон должен быть серым, как давайте
00:33:42
сделайте оттенок 300 и просто нажмите «Сохранить»
00:33:46
вы можете видеть, что мы автоматически получаем наши
00:33:47
маленькое изображение всплывает прямо сейчас, я собираюсь
00:33:49
дайте этому дополнению 4, и я собираюсь
00:33:51
скажем, что это должно быть округлено до четырех, как
00:33:54
ну ладно, вот и все, мы уже это сделали
00:33:56
у меня немного потрескался пользовательский интерфейс
00:33:58
правильно, и это первая мелочь, которую мы
00:33:59
можно увидеть вещь, которая выглядит потрясающе
00:34:01
и помните, ребята, если вам нравится
00:34:02
любой из этого контента, и ты хочешь пойти
00:34:04
вперед и сделать этот шаг дальше сделать
00:34:07
идите и проверьте правильный сайт response.com
00:34:09
курс по косой черте на ссылках на нашем сайте
00:34:12
в описании это наш полный флаг
00:34:14
ты знаешь, наслаждаешься ли ты тем, что видишь
00:34:16
а теперь представьте, что у нас внутри
00:34:18
сообщество, конечно, так что правда правда я
00:34:20
рекомендую сходить посмотреть, мы учим
00:34:21
ты делаешь что-то изо дня в день, и у нас есть
00:34:23
невероятные результаты от этого, так что убедитесь
00:34:25
ты посмотри, если тебе интересно
00:34:26
идём дальше, хорошо
00:34:28
давайте посмотрим, чтобы у нас было изображение
00:34:30
следующее, что мы собираемся сделать, это иметь
00:34:32
другой взгляд и кое-что, что нужно знать
00:34:35
что внутри React Native все
00:34:38
flexbox, что все сгибается с помощью
00:34:40
телефон и все это гибкая колонка, как
00:34:42
в отличие от гибкого ряда в отличие от гибкого ряда
00:34:45
ОК, ты должен помнить это и
00:34:47
это потому, что на телефоне обычно так
00:34:48
имеет смысл сделать это в этом направлении
00:34:50
в отличие от другого направления вправо
00:34:52
Итак, у нас есть фрагмент текста и
00:34:53
я просто скажу доставить
00:34:55
сейчас
00:34:56
окей, а потом я возьму еще один
00:34:57
кусок текста и здесь будет сказано
00:34:59
текущий
00:35:00
расположение в порядке
00:35:02
поэтому мы собираемся пойти дальше и
00:35:04
попробуй добиться этого эффекта прямо здесь, окей
00:35:06
Итак, этот вид здесь, который
00:35:08
окружая все, что я собираюсь сделать
00:35:09
просто сделай вот это и скажи, что это гибкий
00:35:11
ряд, и теперь вы можете видеть, что он переходит в
00:35:13
вместо этого погреби, а потом я пойду вперед
00:35:15
и произнесите дополнение в нижней части трех
00:35:17
так что под ним у нас будет немного
00:35:18
элементы заполнения должны располагаться по центру
00:35:20
выровнено, упс, выровнено по центру, и я
00:35:22
я скажу mx4, так что запас четыре на
00:35:24
ось X
00:35:26
и я оставлю ему место между
00:35:27
x-компоненты двух, поэтому он их толкает
00:35:29
отдельно, окей, так что пока выглядишь очень хорошо
00:35:32
уже
00:35:33
теперь для текста вы можете увидеть
00:35:35
попутный ветер, да, это просто заставляет все идти вперед
00:35:37
жив, правильно, поэтому, когда мы говорим, что шрифт должен
00:35:38
будьте жирным, текст должен быть серым из 400
00:35:41
и теперь мы собираемся войти в поток
00:35:42
излагай правильно хз, теперь видно
00:35:44
автоматически выглядит намного красивее
00:35:46
уже, а затем текст под «я»
00:35:48
собираюсь сказать название класса жирным шрифтом и
00:35:51
сейчас я начну писать текст
00:35:52
очень большой, правый, поэтому немного больше и
00:35:55
автоматически вы увидите, что оно запускается
00:35:56
ожить, окей, теперь у нас есть немного
00:35:59
значки в порядке, так что вы могли видеть в
00:36:01
некоторые из моих сборок, которые я обычно использую
00:36:02
что-то под названием «значки героев», окей, герой
00:36:05
значки в данном случае — это то, что я хочу использовать
00:36:07
здесь, но мы не можем просто использовать обычный
00:36:09
значок героя, поэтому вместо этого я буду использовать
00:36:11
это что-то под названием React Native Hero
00:36:13
значки, как вы уже догадались, это
00:36:14
по сути там завернутая версия
00:36:16
окей, так что я собираюсь пойти
00:36:18
мой браузер, я наберу реакцию
00:36:20
встроенные значки героев, и вы можете видеть, что это
00:36:22
первый пакет npm, который появляется для
00:36:24
количество загрузок, так что можно доверять
00:36:27
мы собираемся установить это
00:36:28
реагировать на родные иконки героев и реагировать на родные значки
00:36:31
svg, давайте включим его в наше PR-приложение.
00:36:33
прямо сейчас команду g в команду j pop
00:36:36
это прямо здесь
00:36:38
это старая ошибка, которая у нас есть на
00:36:39
оставил, так что игнорируй это
00:36:41
а затем приступим к установке
00:36:42
зависимости, окей, теперь классная штука
00:36:45
использовать его очень просто, вы можете
00:36:47
в общем, давай и втяни это просто
00:36:49
как мы обычно делаем иконки героев, если
00:36:50
ты не знаешь, какие значки героев - это голова
00:36:52
зайди на сайт Heroicans.com и набери иконку
00:36:55
например пользователь, и вы можете видеть, что мы получаем
00:36:57
солидный вариант и мы получаем контур
00:36:58
вариант, и теперь у нас есть доступ к этому
00:37:00
внутри реакции нативной, так что правда-правда
00:37:03
классная штука, окей, и что на данный момент
00:37:05
я собираюсь сделать, это использовать
00:37:06
что-то под названием значок шеврона вниз
00:37:09
окей, я внутри текущего местоположения
00:37:11
собираюсь ввести значок шеврона вниз и
00:37:13
что я собираюсь сделать, это то, что я собираюсь сделать
00:37:14
импортируйте это в наше приложение, чтобы вы могли
00:37:17
видишь, сейчас это не появляется, но я
00:37:18
на самом деле собираюсь импортировать четыре значка в
00:37:20
один раз, потому что мы собираемся использовать
00:37:21
это на протяжении всей сборки, вот так
00:37:22
шеврон вниз, один из них реагирует родной
00:37:24
Иконки героев, контур косой черты, если я
00:37:27
введите твердое тело, я получу твердое тело
00:37:28
вариант вместо этого, хорошо, я сделаю
00:37:31
контур и как вы увидите через секунду
00:37:33
нам нужно, чтобы оно появилось на экране
00:37:36
окей, это действительно освежает, правда
00:37:39
теперь вы можете проверить это, ребята, так что
00:37:41
мы начинаем с того, что у нас есть размер
00:37:43
и у нас есть цвет, и у вас есть несколько
00:37:44
другие свойства, команда пробела будет
00:37:46
показать тебе много масла в комплекте
00:37:48
варианты, но, как вы можете видеть, вот как
00:37:49
мы собираемся придать ему стиль, это
00:37:50
цвет доставки в порядке, так что будет
00:37:53
может помочь нам, когда мы
00:37:54
все придумываем, хорошо, и теперь у нас есть
00:37:57
текущее местоположение рядом с ним выглядит
00:37:59
очень приятно, я вообще-то собираюсь пойти
00:38:01
вперед и создайте значок пользователя рядом с этим как
00:38:05
ну да, за пределами этого вида здесь
00:38:08
у меня будет значок пользователя
00:38:10
окей, и если я продолжу, ты увидишь
00:38:12
у нас есть значок пользователя такого размера
00:38:14
одному будет 35 и цвет i
00:38:17
хочу сохранить этот цвет от
00:38:18
значок доставки ОК, давайте продолжим и
00:38:20
вставь это тоже и посмотри на это
00:38:22
ребята автоматически уже много ищут
00:38:25
лучше правильно, и что я хочу делать дальше
00:38:28
я перейду к нашему заголовку
00:38:31
так что давайте продолжим и выясним, где мы
00:38:33
был вид, так откуда у нас был вид
00:38:36
содержащий этот текст, я хочу отправить его
00:38:38
чтобы использовать большую часть пространства, поэтому
00:38:39
что я делаю, так это говорю: Flex One, что это будет
00:38:42
тогда это значит, что эта точка зрения правильная
00:38:44
здесь займет большую часть комнаты
00:38:46
вот почему теперь он занимает все
00:38:48
эта комната, которая толкает все к
00:38:51
стороны, окей, очень-очень приятно, и что
00:38:54
вообще-то я собираюсь сделать следующее для
00:38:55
безопасная область для вас — имя класса
00:38:57
белый фон для всего, что позади
00:38:59
мы, часть 5, окей, теперь ты это видишь
00:39:01
автоматически дает ему немного
00:39:02
поп, и если бы ты, наверное, подумал, ох
00:39:04
раньше оно было белым, теперь ты знаешь, окей
00:39:06
теперь я делаю это немного по-другому
00:39:08
хочу идти вперед и на самом деле иметь где
00:39:10
у нас здесь вид, так что
00:39:12
заголовок, этого нужно немного
00:39:14
интервал, ты не думаешь, что это правильно?
00:39:15
немного тесновато, вот что
00:39:17
это выглядит как сейчас, так что я вроде как
00:39:18
хочу дать ему немного
00:39:20
интервал слева или справа, я не могу
00:39:24
помни, где я это дал
00:39:25
интервал, я думаю, он мог быть включен
00:39:28
изображение, заполняющее четыре, мы уже сделали
00:39:30
что ух, здесь мы сделали это хорошо
00:39:34
окей, в таком случае, кто я на самом деле
00:39:36
тогда сделаю это
00:39:39
мы доберемся до этого через секунду, я пойду
00:39:41
повозиться с этим немного
00:39:42
еще и тогда мы сможем увидеть, где я
00:39:44
была такая проблема, я пытаюсь найти
00:39:46
где я это добавил, но да, есть
00:39:48
довольно просто, хорошо, так что для
00:39:51
так правильно, мы собираемся сделать это немного
00:39:53
сначала здесь, поэтому это окно поиска
00:39:55
правильно, следующее, так что я пойду
00:39:56
вперед и запишите это, чтобы у меня было свое
00:39:58
посмотри здесь, так что под этим я пойду
00:40:00
набрать в поиске
00:40:02
я не знаю, где мы делаем, где
00:40:03
интервал подошёл правильно, у нас есть
00:40:04
окно поиска я собираюсь просмотреть и
00:40:06
внутри этого у меня будет еще один
00:40:08
вид
00:40:09
ой, еще один вид
00:40:11
а потом у нас будет
00:40:12
значок регулировки внизу справа
00:40:14
поэтому значок настройки имеет цвет
00:40:17
это будет родной цвет реакции
00:40:20
так что это будет именно этот цвет, верно
00:40:21
здесь, и если ты не знаешь, кто мы
00:40:23
строим прямо сейчас, мы строим это
00:40:24
значок регулировки вот здесь
00:40:27
Итак, давайте продолжим и нажмем «Сохранить», и как
00:40:28
вы можете видеть, что сейчас появляется то, что я делаю
00:40:30
нужно вот это: мне нужно что-то под названием
00:40:31
этот текстовый ввод, хорошо, так что я пойду
00:40:34
сначала иметь значок поиска на
00:40:36
ушел, и тогда я получу
00:40:38
что-то, называемое вводом текста из реакции
00:40:40
родной, поэтому нам придется импортировать
00:40:42
вот так вверху и тогда можно
00:40:44
см. ввод текста, чтобы на этом этапе вы могли
00:40:47
видите, что на самом деле это значок ввода текста
00:40:49
рядом с ним сейчас мы мало что видим, потому что
00:40:51
у него нет заполнителя, поэтому для
00:40:52
заполнитель, я собираюсь продолжить и
00:40:54
скажи что-нибудь вроде
00:40:56
хм, мы собираемся пойти дальше и сделать, хм
00:40:58
рестораны и кухни прямо и я
00:41:01
хочу, чтобы тип клавиатуры был по умолчанию
00:41:04
итак, я собираюсь набрать клавиатуру
00:41:07
и здесь вы действительно можете изменить
00:41:08
разные версии, чтобы вы могли иметь
00:41:10
десятичная клавиатура и все такое, я
00:41:11
собираюсь сделать значение по умолчанию, поэтому отрегулируйте
00:41:13
значок вот и поехали, давайте сделаем эту коробку
00:41:16
больше похоже на настоящий поиск
00:41:18
коробка, дай мне это проверить
00:41:21
имя класса, пойдем и скажем flex row
00:41:23
поставь все в ряд
00:41:25
и мы собираемся пойти дальше и сказать
00:41:27
расстояние между ними должно быть два, упс
00:41:30
пробел х из двух, я скажу «гибкий один»
00:41:33
на эээ
00:41:35
вот и все
00:41:36
в поле ввода, а затем я скажу
00:41:38
фон должен быть серым
00:41:40
200 и дополнение из трех, мы
00:41:43
иди окей
00:41:44
теперь небольшая ошибка или что-то в этом роде, о нет
00:41:46
окей, там все накачено
00:41:48
прямо сейчас это не то, что я хотел
00:41:50
делать хм
00:41:52
вот и все
00:41:54
окей, какого черта я только что сделал
00:41:56
хм, я что-то полностью сломал
00:41:58
не хотел этого делать
00:42:01
давай продолжим и обновим, я
00:42:03
заходим в мое приложение, чтобы обновиться, там мы
00:42:05
идите, что, черт возьми, там произошло, ребята
00:42:07
это было странно, ладно, так что поехали
00:42:09
вернуться в него и добавить в наше пространство
00:42:12
х1
00:42:15
возможно это фон мой флекс еще один окей фон серый
00:42:18
это сделает фон серым
00:42:21
из 200.
00:42:24
окей, мое приложение сойдет с ума, если мы
00:42:26
обновить
00:42:29
вот и все, ладно, я не знаю, почему это
00:42:31
случилось, но да, как я уже говорил
00:42:33
терпение при работе с React Native — добродетель
00:42:35
все в порядке, это абсолютно необходимо, все
00:42:37
правый значок поиска, я скажу, что цвет
00:42:38
серый
00:42:40
а потом я скажу размер этого
00:42:41
значок 20. для вида снаружи я
00:42:44
собираюсь пойти дальше и сказать гибкий ряд
00:42:46
поэтому мы хотим иметь этот значок настройки
00:42:48
рядом с ним предметы, которые должны быть центральными i
00:42:51
не знаю, почему он продолжает это делать, это
00:42:52
как восстановление патрона
00:42:53
центр элемента
00:42:54
пространство x из 2, панорамирование нижней части двух и a
00:42:58
запас по оси X из четырех
00:43:00
хорошо, поехали
00:43:02
теперь мы хотим сделать гибкий вариант, окей
00:43:05
мы автоматически много ищем
00:43:07
лучше правильно, так что мне действительно нравится
00:43:10
посмотри, что у нас сейчас происходит
00:43:12
это уже выглядит намного лучше, хм
00:43:16
да, окей, так что на данный момент, я думаю, мой
00:43:18
отступы там немного странные, окей
00:43:20
так что я собираюсь пойти дальше и действительно сделать
00:43:22
странно, что это должно было прийти на самом деле
00:43:24
помимо того, что мы делали ранее, но это
00:43:26
отлично
00:43:29
всякий раз, когда у меня есть свой образ, я просто иду
00:43:31
просто дать этому отступ x из
00:43:33
два
00:43:34
или панорамирование x, так что четыре, давай сделаем четыре
00:43:37
да, любой x4, и мы можем сделать то же самое
00:43:41
вещь снаружи тоже
00:43:43
верно
00:43:44
теперь я мог бы сделать это со всем, но если бы я
00:43:46
сделай это, это будет выглядеть немного странно
00:43:48
я действительно не хочу делать это прямо сейчас
00:43:49
поэтому я собираюсь перейти к моему окну поиска
00:43:51
также это дает нам дополнение x
00:43:53
тоже четыре и все
00:43:55
автоматически выглядит намного красивее
00:43:57
уже хорошо, если бы я напечатал
00:43:59
здесь вы можете видеть, что у нас есть клавиатура
00:44:00
работает очень хорошо, окей, мы просто
00:44:02
набираю К
00:44:03
э, давай продолжим и выполним команду J R, чтобы
00:44:06
обновите наше приложение, чтобы снова произошло
00:44:08
во многом это потому, что я веду прямую трансляцию как
00:44:10
ну, это немного странно, но да
00:44:12
вот и все, так что у нас есть
00:44:14
поищи внизу, это выглядит довольно хорошо
00:44:16
укажите теперь, что я хочу сделать, это я хочу
00:44:18
есть прокручиваемый контейнер, так что это
00:44:20
фактически весь вид здесь прокручивается
00:44:23
контейнер, так что запомни, что у нас было
00:44:25
раньше он становится прокручиваемым
00:44:27
контейнер, поэтому сейчас я хочу сделать
00:44:29
вместо того, чтобы использовать обычный вид, я собираюсь
00:44:31
использовать режим прокрутки, так что скажем так
00:44:33
следующее тело, которое мы делаем
00:44:35
вот я и напечатаю
00:44:37
прокрутите просмотр, окей, я собираюсь импортировать это
00:44:39
от реакции нативного и убедитесь, что вы
00:44:41
не путайте это правильно, так что это
00:44:42
похоже на представление, но вместо этого это
00:44:44
теперь можно прокручивать, окей, так что на данный момент я
00:44:46
собираюсь пойти дальше и добавить
00:44:48
что-то, называемое категорией, поэтому мы
00:44:50
собираюсь создать компонент для
00:44:51
категории, упс, категории и
00:44:54
категории будут для этого
00:44:55
часть здесь, где у нас есть
00:44:57
слайдер с альфами пицца тайские суши так
00:44:59
вперед направо
00:45:01
и тогда у нас будет
00:45:02
избранные строки прямо сейчас избранные
00:45:05
строки по существу
00:45:07
просто собираюсь представить эти предложения
00:45:09
рядом с вами, поэтому это избранная строка
00:45:11
у нас это выделенная строка и
00:45:13
тогда у нас вкусные скидки
00:45:15
это тоже избранная строка, так что
00:45:17
у нас будет этот избранный первый ряд
00:45:18
два и три, а потом у нас будет
00:45:20
категории и т. д., так что давайте
00:45:21
начни с категорий, которые я собираюсь
00:45:22
создадим компонент прямо так, что нам нужно
00:45:24
нужно сделать, это создать, зайти в наше здесь
00:45:27
уровень, поэтому мне нравится нажимать package.json
00:45:29
я собираюсь ввести компоненты и внутри
00:45:31
компоненты, которые я сейчас создам
00:45:32
мой первый компонент, этот компонент
00:45:34
мы будем называть категории правильно
00:45:37
поэтому мы продолжим и введем
00:45:38
категории dot js реагируют нативно
00:45:42
функциональный экспортированный компонент
00:45:44
теперь у нас есть категории, окей, ты
00:45:46
всегда хочется убедиться, что это так
00:45:47
вообще-то столица c, кстати, тоже
00:45:49
ребята, так вот, вы хотите просто сделать
00:45:51
это сила привычек, категории, окей
00:45:54
Итак, с этим покончено, чем мы сейчас и займемся
00:45:56
нужно сделать, это отобразить это на
00:45:59
экран, чтобы мы могли видеть его, когда
00:46:00
мы развиваемся, поэтому на данный момент я
00:46:02
собираюсь пойти дальше и ввести категории
00:46:05
и вы видите, что оно появляется вместе с авто
00:46:07
завершение импорта правильно, поэтому нажмите «Сохранить, мы»
00:46:09
должен увидеть это через секунду
00:46:11
внизу справа, поэтому категории справа
00:46:13
где это справа, так что у нас есть
00:46:15
категории
00:46:17
и давай просто напишем привет
00:46:20
и почему я не вижу свои категории
00:46:22
странные вещи, давайте посмотрим
00:46:25
давайте вернемся к экрану нашего ресторана
00:46:27
хм, наш главный экран, извините
00:46:30
а теперь давайте действительно что-нибудь сделаем
00:46:32
где у нас все в порядке, так что главный экран
00:46:35
я собираюсь сделать эту прокрутку просмотром
00:46:37
мы собираемся сделать фон серым и
00:46:39
я сделаю 100, окей, так что все
00:46:42
фон здесь должен быть серым, я
00:46:43
любопытно посмотреть, что происходит, если
00:46:45
я делаю гибкий, я просто хочу посмотреть
00:46:46
что-то в гибком формате
00:46:47
где, черт возьми, моя вещь, я думаю, моя
00:46:50
компилятор сегодня немного глючит
00:46:53
моя горячая перезагрузка
00:46:55
оно определенно беспокоится об этом
00:46:58
хорошо
00:47:00
итак, у нас происходят некоторые странные вещи
00:47:01
прямо сейчас, потому что мой настоящий
00:47:04
компилятор работает не так, как я
00:47:05
ожидал этого, но что мы тоже можем сделать
00:47:07
чтобы получить это, если ты получишь такое
00:47:08
проблема в том, что я живу этим
00:47:10
бывает, но почему-то все портится
00:47:12
с этим, но если я сделаю это здесь и дам этому
00:47:14
во-вторых, поэтому я просто набрал w в
00:47:16
терминал, он собирается открыться
00:47:17
это тоже есть в сети, окей, так что я
00:47:19
собираюсь использовать Интернет для разработки большей части
00:47:20
это, и тогда мы сможем вернуться к
00:47:21
потом телефон, окей, так вот здесь, где
00:47:24
у нас есть категории, что я на самом деле
00:47:26
хочу сделать это
00:47:27
я хочу это немного изменить, я
00:47:29
собираюсь сделать так, чтобы у нас было
00:47:30
контейнер содержимого, упс
00:47:32
давай продолжим и сделаем это, я собираюсь
00:47:33
сказать
00:47:34
стиль контейнера контента и этот я
00:47:37
я не могу использовать свой милый хвост в CSS, поэтому мы
00:47:40
собираюсь пойти дальше и сделать кое-что еще
00:47:42
здесь, но да, если мы обновим это
00:47:45
локос 1906, вот под чем он будет
00:47:48
ты должен увидеть здесь
00:47:50
сейчас он собирает пакет для
00:47:53
паутина
00:47:55
давай продолжим и подождем, пока это
00:47:57
собираюсь пойти дальше и построить его на
00:47:58
сеть, так что еще раз, просто подожди секунду, так что
00:48:01
вот и все, какого черта это
00:48:02
текст красный о боже мой окей
00:48:05
это так странно, я не сделал, я ушел
00:48:07
напиши прямо здесь, кажется, я этого не делал
00:48:09
о боже мой, я сделал вау
00:48:11
окей, это плохо, да
00:48:14
окей, на данный момент это то, что мне нравится
00:48:16
хотел увидеть, мм, очевидно, не нравится
00:48:19
это, но да
00:48:20
хорошо
00:48:22
[Музыка]
00:48:24
так
00:48:25
вид текстовой области
00:48:28
окей, мой симулятор iOS действительно
00:48:32
странно, сейчас я собираюсь на самом деле
00:48:33
отрежь его и начни запускать заново
00:48:35
снова
00:48:36
Итак, выставка начинается
00:48:38
и что мне нравится делать в этот момент, ребята
00:48:40
честно говоря, я буду
00:48:42
проведите пальцем вверх отсюда
00:48:44
эээ, если это работает, иногда оно не хочет
00:48:46
на работу, и я снова делаю это для iOS, так что теперь
00:48:48
надеюсь, он восстанавливает пакет
00:48:50
это исправляет эти маленькие странные ошибки
00:48:51
у нас все в порядке, так что очень странно
00:48:54
это правильно, давайте продолжим и просто
00:48:55
узнай еще раз, скрываю ли я свое
00:48:57
прокрутите просмотр и сохраните еще раз, поехали
00:48:59
вперед и сделай это
00:49:02
окей, на данный момент это потому, что я
00:49:04
представил свой вид прокрутки, который кажется
00:49:06
выйти из строя
00:49:08
хорошо
00:49:09
интересно, окей, мой значок поиска
00:49:12
просмотреть ввод текста на самом деле мой ввод текста
00:49:14
хотел занять больше места
00:49:17
но вид здесь гибкий, почему
00:49:19
это тоже происходит о боже, ладно
00:49:21
так много вещей ждут своего часа, верно?
00:49:22
сейчас, но мы доберемся туда, девочки, один gsx
00:49:25
фанат да
00:49:27
правильная отладка вживую, обычно я этого не делаю
00:49:29
хочу отладить это на ранней стадии, но это
00:49:31
хорошо
00:49:32
хорошо, итак
00:49:34
на данный момент у нас есть наши рестораны
00:49:36
и кухня, давай просто продолжим и просто
00:49:38
начни разбирать это прямо сейчас, и вот мы
00:49:39
идти
00:49:40
ввод текста есть
00:49:42
да, так что моя горячая перезагрузка просто не такая
00:49:45
вести себя сегодня честно, что на самом деле
00:49:46
странный
00:49:47
что нам придется сделать, это
00:49:49
вероятно, разрабатывать по телефону или на э-э
00:49:52
здесь и тогда сделай это соответственно, так что давай
00:49:54
продолжай и делай это время от времени, даже
00:49:56
вот почему это выглядит так, я делаю
00:49:59
не знаю, давай посмотрим
00:50:01
окей, небольшой сеанс отладки
00:50:04
где это у меня сейчас есть это
00:50:06
уже нет, это не гибкая строка, так что это
00:50:07
не следует так себя вести, это
00:50:09
гибкая колонка, я не понимаю, почему мы
00:50:11
получаю это, о боже мой
00:50:13
о боже, ребята, это сообщение, о, окей
00:50:16
это глупая ошибка
00:50:18
вау, окей
00:50:20
у нас есть текст, обертывающий все это
00:50:21
о нет, это ужасно
00:50:25
окей, это абсолютно ужасно, ни в коем случае
00:50:27
вот почему, ребята, мы пытаемся обернуть
00:50:29
это нормально
00:50:31
ладно, это было ужасно, такое случается
00:50:33
лучший из нас
00:50:34
никто не заметил, что это тоже было
00:50:36
круто, это было ужасно, окей, мы сделали это
00:50:37
прошло, все в порядке, все хорошо, правда, я
00:50:39
у меня был текстовый вид, хорошо, так что все в порядке
00:50:42
все время на что я жалуюсь
00:50:43
в любом случае, по крайней мере, ты знаешь, что можешь
00:50:44
вы можете показать это на обоих сейчас, что
00:50:46
что всегда круто
00:50:48
что я собираюсь сделать, так это, вероятно, иметь
00:50:49
что позади и таким образом ты можешь видеть
00:50:50
как это выглядит и на телефоне
00:50:51
да, так что
00:50:53
окей, на данный момент
00:50:55
это сбивает с толку, я думаю, есть давайте
00:50:57
убери это
00:50:58
окей, мы сделали это, мы сделали это, все хорошо
00:51:00
я думал у себя дома типа
00:51:02
ничто не ведет себя так, как я ожидаю
00:51:04
прямо сейчас, поэтому и моя прокладка
00:51:06
х не работал, я знал это, я знал, что
00:51:08
я не сошел с ума, так что панорамирую xr4
00:51:11
нам это не нужно, я думал про себя
00:51:12
голова, я был как будто что-то другое
00:51:14
это странно, так что сейчас я пролистну
00:51:16
просмотры здесь, окей, теперь я счастлив, что был
00:51:18
у меня стресс, о боже, так давай сделаем
00:51:20
категория привет
00:51:22
так что теперь я собираюсь пойти дальше и измениться
00:51:23
это придумай и доработай, окей, так что
00:51:26
четыре категории, чем мы собираемся заняться
00:51:28
вперед и сделать, я действительно собираюсь быть
00:51:30
создание
00:51:31
вид прокрутки здесь, вот этот
00:51:33
на самом деле это будет называться прокруткой
00:51:35
посмотрю, и я собираюсь пойти дальше и
00:51:36
на самом деле импортируйте это, мы собираемся пойти
00:51:38
вперед, и здесь я собираюсь создать
00:51:40
категория
00:51:41
открытка, хорошо, это будет
00:51:42
многоразовый компонент
00:51:44
карточка категории, и вот я собираюсь
00:51:46
создайте еще один компонент под названием категория
00:51:49
открытка, и я только что понял, что сделал ужасную
00:51:51
снова ошибка, так что мне нужно время
00:51:53
чтобы получить поток прямо сейчас, но вот это
00:51:56
должна быть с большой буквы ребята не делайте
00:51:58
то, что я только что сделал, означает, что мы тоже
00:52:00
должны импортировать наши заявления об импорте в
00:52:02
топ, который должен быть категорий любой
00:52:04
компонент всегда должен иметь капитал
00:52:06
письмо, поехали
00:52:07
окей, мы справились, мы преодолеем это, реальность
00:52:10
будут ли у вас проблемы с отладкой?
00:52:11
мне нравится показывать тебе это, так что это не так
00:52:13
всегда идеально, и таким образом мы можем быть добрыми
00:52:15
ты знаешь, что это всегда немного больше
00:52:17
реалистично относительно того, что мы делаем правильно
00:52:18
почти 600 лайков, продолжим
00:52:20
ребята, все в порядке, категории
00:52:22
на данный момент, что я хочу сделать
00:52:24
я собираюсь съесть кучу
00:52:26
категории, например, представьте, что это массив
00:52:28
а потом я хочу пойти дальше и потянуть
00:52:29
их, и тогда мы пойдем вперед
00:52:30
и отобразить это на экране, окей, так
00:52:32
обо всем по порядку, у нас есть свиток
00:52:33
вид и что это будет за
00:52:35
вид с горизонтальной прокруткой, окей, а где это?
00:52:38
мое дело, это будет
00:52:39
горизонтальная прокрутка, поэтому мы строим
00:52:40
это прямо сейчас категории, окей, так что
00:52:42
это будет горизонталь
00:52:45
прокрутка в отличие от вертикальной
00:52:47
я не хочу показывать горизонталь
00:52:49
индикатор показывает горизонтальный индикатор
00:52:52
так у тебя есть все такие классные вещи
00:52:53
происходит сейчас, и я скажу
00:52:55
стиль контейнера контента, а также некоторые
00:52:57
немного стиля здесь
00:52:58
горизонтальная ось 15
00:53:01
и я скажу «отступ сверху»
00:53:03
из 10.
00:53:05
хорошо
00:53:06
вот и все, это действительно помогает
00:53:08
своего рода дополнение вокруг фактического внутреннего
00:53:10
контейнер, который немного похож на
00:53:11
другая техника укладки, которую я не получу
00:53:12
слишком далеко, так что на данный момент
00:53:15
что я хочу сделать, так это то, что я просто собираюсь
00:53:16
какая-то сила в паре таких
00:53:17
карточки категорий
00:53:19
хорошо, я собираюсь пойти дальше и просто
00:53:20
сила в некоторых из них, так что представьте, что у нас было
00:53:22
три прямо сейчас, и я просто собираюсь
00:53:24
передать каждому что-то, называемое реквизитом
00:53:26
из них, чтобы мы могли настроить его так, чтобы каждый
00:53:27
у одного будет URL-адрес изображения
00:53:30
хм, и давай просто найдем, как дурак
00:53:32
изображение одной из этих вещей прямо сейчас
00:53:33
так
00:53:35
вообще-то, раньше у меня был очень хороший
00:53:37
не бери его с собой прямо сейчас
00:53:39
но на самом деле мы можем решить эту проблему за
00:53:40
второй, так что давайте просто найдем
00:53:43
пока пустышка, и для чего я ее буду использовать
00:53:45
теперь давайте просто воспользуемся этим
00:53:47
а затем, когда мы придем, чтобы заменить его на
00:53:49
настоящие, я покажу тебе, как мы можем
00:53:51
взять их
00:53:52
окей, ссылки на propriet.com вот и все
00:53:55
иди, и я пойду и передам это
00:53:58
для каждого из них
00:54:00
окей, а потом я тоже пойду вперед
00:54:02
и добавьте в заголовок прямо так в каждом
00:54:05
я просто скажу, что название - это
00:54:07
тестирование
00:54:08
хорошо
00:54:09
и что мы собираемся сделать сейчас, это принять
00:54:11
это как реквизит, теперь реквизит в основном позволяет
00:54:13
компоненты должны быть многоразовыми, поэтому реквизит
00:54:15
выступать в качестве функционального аргумента, который мы
00:54:17
может разрушить реквизит, чтобы проникнуть внутрь
00:54:19
их, чтобы мы могли получить URL-адрес изображения и мы
00:54:21
могу получить титул, который я передаю
00:54:22
через вот почему это делает это то, что
00:54:24
делает компоненты многоразовыми, так что
00:54:26
теперь я могу пойти дальше и сказать
00:54:28
вместо этого мы скажем просто заголовок
00:54:29
В качестве примера
00:54:30
и давайте продолжим и посмотрим, так что теперь вы
00:54:32
можно увидеть тестирование тестирование тестирование
00:54:34
пришёл из-за этого, так что если я скажу
00:54:35
Тестирование одно Тестирование два Тестирование три
00:54:39
бац, где это проходит
00:54:41
окей, классная штука, так что сейчас на этом этапе
00:54:44
каждый из них будет осязаемым
00:54:46
кнопка, чтобы реагировать на родную, когда захочешь
00:54:48
есть сенсорная кнопка, мы ее называем
00:54:50
осязаемая непрозрачность и что это значит
00:54:53
ой, не тот, его можно осязать
00:54:56
непрозрачность ок, реагировать родная и что
00:54:58
это значит, ребята, это, по сути, значит
00:55:00
когда я прикоснусь к нему, непрозрачность изменится
00:55:03
так что обратите внимание: если я нажму на это, вы увидите, как
00:55:05
изменение непрозрачности в результате нажатия
00:55:07
вот так мы получаем такой хороший вид
00:55:08
следующее, что я хочу сделать, это заполнить
00:55:11
сюда еще добавь изображение, так что
00:55:12
помните, что изображения самозакрываются
00:55:14
компоненты добавляют источник URI для этого
00:55:16
источником будет URL-адрес изображения, хорошо
00:55:19
тогда нам придется оформить его таким образом
00:55:20
имеет некоторую высоту и ширину
00:55:22
Итак, я скажу, что вот имя класса
00:55:25
будет высота 20 и ширина 20, так как
00:55:28
ну, и я собираюсь сделать его закругленным
00:55:30
окей, на этом этапе мы получаем ошибку
00:55:32
поскольку изображение не было импортировано, поэтому мы
00:55:34
не хочу этого делать и как можешь
00:55:36
видишь, у нас есть такие милые люди, ты знаешь
00:55:38
это просто шаблон, который мы можем использовать
00:55:39
повозиться, чтобы начать прямо сейчас
00:55:41
имя класса, которое я скажу маржа
00:55:42
прямо между каждым из них должно быть 2
00:55:45
и я хочу, чтобы это было
00:55:46
[Музыка]
00:55:47
относительно верно, так относительно, и я покажу
00:55:50
ты почему через секунду
00:55:52
хорошо, итак
00:55:54
относительно, я перехожу к абсолютной позиции
00:55:55
это внутри него, так что, когда вам нужно
00:55:57
в противном случае сделайте своего родителя родственником
00:55:58
это просто улетит в это в целом
00:56:00
экран, поэтому я скажу абсолютный
00:56:02
нижний
00:56:04
и я сейчас скажу левый
00:56:07
как вы можете видеть, это относительно моего
00:56:08
родительский контейнер, и он попадает в него
00:56:10
угол прямо, так что здесь я напишу текст
00:56:12
белый, и я хочу сделать шрифт жирным, окей
00:56:15
теперь ради этих фотографий, что я сделал
00:56:18
вперед, и буквально готово, я перешел
00:56:19
для доставки на сайт, и я вроде как
00:56:21
типа поймал несколько изображений и типа того
00:56:23
используйте их вот так, хм, что я собираюсь сделать
00:56:25
сделай просто, чтобы немного помочь нам
00:56:27
немного, я думаю, что у меня действительно есть
00:56:28
пустышка, которую мы можем использовать
00:56:32
оно у меня с собой?
00:56:34
нет, окей, все в порядке, мы можем, просто мы можем
00:56:36
иди с этим пока, хорошо, но
00:56:38
вместо этого я могу сделать вот что: давай просто
00:56:39
продолжай, я быстро найду
00:56:41
изображение в Google и просто найди лайк
00:56:44
картинка суши, чтобы мы могли что-то вроде
00:56:46
используйте это
00:56:48
и тогда я покажу тебе, как в конце концов
00:56:49
мы собираемся подключить его к sanity cms
00:56:51
и пусть все работает
00:56:52
рядом вот так вот так в этом
00:56:55
точка, я просто возьму любую случайную информацию
00:56:56
картинка у меня есть, я воспользуюсь
00:56:58
что-то вроде этого
00:57:01
и я скопирую адрес изображения, который у меня есть
00:57:03
сейчас прячу свой экран, потому что я этого не делаю
00:57:04
хочу, я не знаю, что произойдет
00:57:06
экран, так что я быстро доберусь до тебя
00:57:08
ребята, ссылку, которую вы можете использовать, так что это
00:57:09
очень легко скопировать меня, раз мы это делаем, окей
00:57:13
так
00:57:14
две секунды, ребята, у меня есть ссылка только что
00:57:17
Второй
00:57:19
хорошо
00:57:21
о, это вообще-то изображение, так что это
00:57:22
не сработает
00:57:23
давай сделаем это, ладно, скопируй изображение
00:57:26
адрес, туда мы идем
00:57:28
у меня есть изображение, я копирую URL
00:57:30
для этого изображения мы идем хорошо и
00:57:32
тихий
00:57:33
окей, на этом этапе я воспользуюсь
00:57:36
в наших категориях давайте просто изменим это
00:57:38
для изображения, которое у меня есть gn7, и теперь мы
00:57:41
вы должны увидеть там другое изображение
00:57:42
иди, с этим намного проще работать
00:57:44
прямо сейчас, чтобы посмотреть, что происходит
00:57:46
ой, извините, ребята, я забыл вам всем показать
00:57:47
да, я просто заменил это на
00:57:49
теперь другая ссылка, так что gn7
00:57:51
и вы можете видеть, что теперь у нас есть наши
00:57:52
примеры здесь, так что в конечном итоге это
00:57:54
что типа будет налито
00:57:56
похоже на это, так что мы собираемся
00:57:57
мы просто настраиваем себя так, чтобы
00:57:59
в конце концов мы сможем подключиться к нашему
00:58:01
sanity cms backend и иметь полный контроль
00:58:03
об этом прямо сейчас, как вы видите, ребята
00:58:05
я могу прокручивать этот контейнер как
00:58:07
ну да, действительно очень классная вещь
00:58:09
и, хм, и пока что хорошо выгляжу
00:58:11
на этом этапе мы собираемся сделать
00:58:13
Вкладка функций справа, так что эта справа
00:58:15
здесь и тогда я хочу сделать то, что я
00:58:17
вообще-то собираюсь подключить стандартный tcms
00:58:19
или, может быть, мы можем сделать звук ecms сейчас, хм, я
00:58:22
подумай, может быть, сначала мы сделаем предложения рядом с тобой
00:58:24
а затем мы сделаем стандартные ECM и
00:58:26
соедините все это, хорошо, и тогда мы сможем
00:58:28
делать разные экраны
00:58:29
окей, на данный момент то, что я хочу
00:58:31
нужно перейти на главный экран и где
00:58:35
я сейчас здесь
00:58:38
я на главном экране, да
00:58:41
домашний экран
00:58:42
так
00:58:43
то, что я хочу сделать сейчас, находится под
00:58:46
тело прямо здесь, внизу, где мы
00:58:48
есть категории, которые мы отображаем
00:58:49
есть избранные строки, теперь хорошо для избранных
00:58:52
строк, что я хочу, чтобы вы, ребята, сделали
00:58:54
я просто собираюсь иметь
00:58:56
компонент, который выглядит примерно так
00:58:58
это у меня будет избранный ряд
00:59:00
компонент в порядке, и что я хочу сделать
00:59:03
здесь будет самозакрытие
00:59:04
компонент и реквизит будут
00:59:05
посмотри примерно так, они собираются
00:59:06
иметь титул, и каждый из них будет
00:59:08
например, у нас будет
00:59:10
правильно выбрано, так что это первое
00:59:12
один будет представлен точно так же
00:59:13
как это показано
00:59:16
и тогда у него будет
00:59:17
описание
00:59:18
и это описание может быть чем-то
00:59:20
как платные размещения для наших партнеров
00:59:22
потому что это то, что у них есть
00:59:23
доставка
00:59:24
окей, а потом у нас будет
00:59:25
избранная категория, потому что мы
00:59:28
на самом деле мне это не нужно
00:59:29
думать
00:59:30
э-э, да, вообще-то нет, он нам нужен
00:59:33
давай все равно добавим, я не уверен, что я
00:59:35
на самом деле используйте это или нет
00:59:37
категория будет представлена
00:59:40
окей, я буду использовать их
00:59:41
потом я собираюсь создать это
00:59:42
избранный компонент строки, а затем мы
00:59:45
собираюсь использовать его потом, так что
00:59:47
избранный
00:59:49
row.js реагирует на собственный функциональный экспорт
00:59:52
бам
00:59:54
и внутри здесь я действительно собираюсь
00:59:56
пройти через эти три вещи
00:59:58
Итак, у меня есть заголовок, который мы только что написали
00:59:59
у нас есть описание
01:00:02
ой, описание и заметьте, что я
01:00:03
деструктуризация здесь, и у нас есть
01:00:05
избранная категория избранная категория
01:00:09
хорошо
01:00:10
нажмите «Сохранить», вернитесь на главный экран, добавьте
01:00:13
наш импорт в порядке, поэтому обязательно импортируйте
01:00:15
это тоже так нажмите "Сохранить"
01:00:18
и теперь то, что мы видим, представлено
01:00:20
строка всплывает так, а потом то, что вы хотите
01:00:21
нужно просто вытащить его три раза, чтобы
01:00:24
пример
01:00:25
и это начнет нам помогать
01:00:27
что я сделал, чтобы помочь нам
01:00:28
вот я просто собираюсь пойти дальше и
01:00:30
сэкономь немного хлопот, и я
01:00:32
у меня есть роза, которая что-то ищет
01:00:34
вот так, ради чего я на самом деле и сделал
01:00:36
вы, ребята, даете вам немного больше
01:00:38
своего рода вариант, у нас есть
01:00:40
представлены вкусные скидки на предложения рядом
01:00:42
ты в порядке, так что давай сделаем это на самом деле
01:00:44
теперь выглядишь немного симпатичнее, окей, так что
01:00:46
первое, что я хочу сделать
01:00:48
есть, и нам на самом деле не нужны были избранные
01:00:49
категории, я только что понял, да, мы
01:00:50
мне это не нужно, я не использовал это в
01:00:51
конец, так что я перейду к делу
01:00:53
избранный ряд и вот что мы
01:00:56
собираемся сделать, это у нас будет
01:00:59
идентификатор заголовок
01:01:01
и хм
01:01:04
название и описание название описание
01:01:06
создатель функций, который нам не нужен, и я это сделал
01:01:09
мне тоже нужен идентификатор в качестве еще одного реквизита, окей
01:01:12
и вот что я забыл добавить и так далее
01:01:14
главный экран, поэтому каждый из них
01:01:15
у меня тоже будет идентификатор, окей, так верно
01:01:18
сейчас мы просто проведем тестирование
01:01:20
я просто скажу раз, два, три, это
01:01:22
один будет один два три четыре этот
01:01:24
один два три четыре пять отдельные идеи
01:01:26
окей, потом это будет иметь смысл
01:01:28
когда мы на самом деле вытащим это сзади
01:01:30
конец, хорошо, так что давайте продолжим и сделаем
01:01:32
избранная строка прямо сейчас
01:01:34
и внутри избранного ряда помните, ребята
01:01:37
это будет записано позже
01:01:38
вы, ребята, не торопитесь, постройте это
01:01:40
столько, сколько нужно, чтобы перемотать назад
01:01:42
приостанови такие вещи, так что я просто
01:01:43
собираюсь переехать в это место и типа того
01:01:45
продолжай в том же духе, и в этом мы первые
01:01:47
собираюсь делать предложения рядом с вами, так что это
01:01:48
красивая маленькая стрелка вверху, так что
01:01:50
внутри этого представления у нас будет текст
01:01:51
какое название
01:01:53
и тогда у меня есть значок со стрелкой вправо
01:01:55
окей, стрелка
01:01:57
правый значок
01:01:58
и это будет круто
01:02:01
вариант на самом деле, я думаю, я использую твердый
01:02:03
вариант, что я здесь использую, иконка
01:02:05
набросок варианта, ок, и вот, пожалуйста
01:02:07
иди, у нас это выглядит довольно прилично
01:02:09
и тогда для этого я скажу
01:02:10
текст должен быть именем класса
01:02:13
равно шрифту, жирный шрифт должен быть большим
01:02:17
нажмите «Сохранить», и значок стрелки закончится
01:02:20
вот цвет, который я хочу, чтобы он был
01:02:22
цвет доставки
01:02:23
окей, я пойду и вставлю это
01:02:25
вот так, теперь для общего представления я
01:02:27
нажму на название класса, я скажу это
01:02:29
представление должно быть верхним пределом четырех классов
01:02:31
имя
01:02:33
ваша прибыль выше четырех
01:02:34
гибкий центр элементов строк
01:02:37
и выровнять между и отступы на
01:02:40
ось X четырех, такие небольшие различия
01:02:42
в вещах и автоматически смотрит
01:02:44
удивительно по сравнению с тем, что было немного
01:02:47
немного текста сбоку будет
01:02:48
описание, как видите, прошло
01:02:50
захожу, я собираюсь назвать имя класса
01:02:52
здесь и это будет текст
01:02:54
будет очень маленьким, окей
01:02:56
а затем мы собираемся пойти дальше и сказать
01:02:57
текст должен быть серым 500 отступов x 4
01:03:01
и это не то, что ты хочешь сделать
01:03:03
ты хочешь это вырезать
01:03:06
вот и все
01:03:07
вот и все
01:03:08
автоматически выглядит пока неплохо
01:03:10
правда, очень здорово, а потом мы
01:03:12
получил этот вид прокрутки внутри каждого
01:03:14
избранная строка окей
01:03:17
так что это будет
01:03:19
просмотр прокрутки
01:03:21
и мы собираемся импортировать этот свиток
01:03:22
вид из реакции нативного
01:03:24
это будет горизонтальный
01:03:26
просмотр прокрутки
01:03:28
окей, так что помни, что мы строим
01:03:29
прямо сейчас это горизонтальная прокрутка
01:03:32
компонент, и это будет еще один
01:03:34
компонент ресторанной карты, хорошо, так что для
01:03:36
это я скажу содержание
01:03:38
стиль контейнера
01:03:40
будет
01:03:41
отступы по горизонтальной оси 15
01:03:46
хорошо
01:03:47
и затем мы покажем
01:03:49
горизонтальный, э-э, покажи ой, извини, покажи
01:03:52
индикатор горизонтальной прокрутки false
01:03:55
и имя класса для этого дополнения
01:03:58
сверху, вам может быть интересно, но
01:03:59
солнечно, почему ты это сделал
01:04:01
отступы по горизонтали на этом, а затем
01:04:03
здесь отступы, потому что это общий результат
01:04:05
стиль просмотра прокрутки, это внутренний
01:04:07
прокрутите стиль просмотра вправо, чтобы он сделал
01:04:09
смысл в том, что внутреннее заполнение 15 - это то, что
01:04:11
у нас здесь все в порядке
01:04:13
так
01:04:15
внутри этого режима прокрутки мы собираемся
01:04:16
иметь кучу ресторанных карточек, верно
01:04:19
такой ресторан
01:04:20
карты, так что именно здесь, по сути,
01:04:21
ресторанные карты будут жить хорошо
01:04:23
поэтому мы собираемся создать еще один
01:04:24
компонент, который будет представлять
01:04:26
ресторанная карта, так что эта будет
01:04:27
Быть ресторанной карточкой Dot JS React Native
01:04:31
функциональный компонент экспорта попал в
01:04:33
кнопка палец вверх, ребята, это круто
01:04:35
все в порядке для этого
01:04:37
у нас будет куча реквизита
01:04:39
это передается сюда, да, это
01:04:40
немного беспорядочно, но это то, что мы делаем
01:04:42
хочу сделать для ресторанной карты, окей
01:04:44
Итак, у нас есть рейтинг названия URL-адреса изображения
01:04:47
жанр адрес краткое описание блюда
01:04:50
долгота и широта, которые будут
01:04:52
будет исходить из задней части, так что это будет
01:04:53
будет иметь смысл, как только мы доберемся до этой точки
01:04:55
хорошо, итак
01:04:57
то, что я хочу сделать здесь, это визуализировать
01:04:59
фиктивная ресторанная карточка окей ресторан
01:05:02
карта такая
01:05:03
окей, теперь что будем делать
01:05:05
мы собираемся идти дальше и на самом деле
01:05:08
передай этот фиктивный реквизит, ладно, с этим
01:05:11
случай, давайте просто дадим некоторые фиктивные данные
01:05:13
это правильно, так что это будет что-то
01:05:14
как идентификатор
01:05:15
равно 1 2 3
01:05:17
URL изображения равен, давайте просто дадим это
01:05:20
URL-адрес изображения, который у нас был раньше, поэтому gn7
01:05:23
название будет «Эх, Нандо» для
01:05:25
пример, давай просто скажем йо
01:05:27
суши
01:05:29
эээ, оценка будет 4,5
01:05:32
жанр будет японским
01:05:35
адрес будет один два три
01:05:36
основное краткое описание это
01:05:38
краткого описания теста здесь нет
01:05:40
иметь значение
01:05:41
и посуда будет пустой
01:05:43
множество
01:05:45
долгота будет похожа на
01:05:46
случайное число на данный момент, потому что это не так
01:05:49
это пока важно, потому что мы собираемся
01:05:50
подключи его к тому времени, как мы это сделаем так долго, чтобы
01:05:51
выберите что-то вроде 20
01:05:53
или нули, я не знаю, случайно, окей и
01:05:55
тогда вот это, нам это не нужно
01:05:57
также
01:05:59
окей, это позволит нам
01:06:00
протестируйте наш дизайн, окей, ресторан
01:06:03
карта отображается, мы получаем это
01:06:04
сюда фиктивный реквизит, а потом мне нужно
01:06:07
оформить саму карточку ресторана
01:06:09
окей, эта ресторанная карточка
01:06:11
по сути, этот компонент прямо здесь
01:06:13
окей, мы сделаем это красиво
01:06:14
его можно будет перелистывать и все такое
01:06:16
ох, я обожаю эту песню
01:06:19
это здорово, ладно, если ты этого не сделал
01:06:21
посмотри влог, где мы были со мной и Джеем
01:06:22
в Джебель Джейс это песня, которая когда
01:06:24
мы летели над горой
01:06:26
если тебе тоже нравятся видеоблоги, дай
01:06:27
я знаю правильно нажать кнопку "палец вверх"
01:06:29
я буду продолжать делать это правильно, и в этом
01:06:31
случай, когда у нас есть вид здесь, и что я
01:06:33
собираюсь сделать сейчас, это на самом деле идти вперед и
01:06:34
скажи имя актера, это имя класса
01:06:36
ох, этот взгляд на самом деле меняется, это
01:06:38
это не будет вид, это будет
01:06:39
осязаемый
01:06:40
непрозрачность
01:06:42
окей, это делает эту странную мелочь
01:06:43
вот это ты должен сделать, ладно, виртуальный
01:06:45
непрозрачность, и теперь вся карта
01:06:47
станет кликабельным, приятно и что
01:06:49
мы хотим сделать вот что, сначала мы собираемся
01:06:50
чтобы иметь изображение, в данном случае изображение
01:06:53
и помни, что мы собираемся поменяться местами
01:06:54
эти изображения, это только для
01:06:55
ссылка, чтобы мы могли с ней работать
01:06:57
на данный момент источником здесь будет
01:06:59
ури, это будет
01:07:01
URL-адрес изображения нажмите «Сохранить» и снова я
01:07:04
всегда забываю, что я всегда забываю
01:07:06
право импорта
01:07:08
окей, сейчас это не отображается, потому что мы
01:07:09
не задал ему высоту и ширину, поэтому
01:07:11
нам нужно получить высоту ой
01:07:13
фамилия
01:07:15
равен высоте, скажем, 36
01:07:19
ширина 36
01:07:21
и округлый
01:07:23
эээ, вот это маленькое окружение
01:07:25
точка, окей, мы начинаем понимать
01:07:27
что-то выглядит довольно прилично, правда
01:07:30
на самом деле это не тот размер
01:07:33
на самом деле то, что я хотел, эээ, мне 64
01:07:35
искал 64.
01:07:37
вот и все, да, так что выглядишь прилично и
01:07:40
тогда мы собираемся пойти дальше и сказать
01:07:42
вид
01:07:44
и внутри представления у меня будет
01:07:45
текстовая строка, и здесь будет написано
01:07:47
заголовок, этот текст будет стилизован
01:07:49
так это шрифтовая доска
01:07:53
выделено жирным шрифтом, а затем мы продолжим
01:07:55
и скажите, что текст должен быть большим с
01:07:56
отступы сверху двух больших текстов
01:07:58
набивка сверху двух бам окей йо суши
01:08:02
пока выглядит хорошо, ладно, теперь этот внешний вид
01:08:06
вид будет, давайте просто космос
01:08:07
это для того, чтобы дать себе немного
01:08:08
передышка, и это панорама x из
01:08:10
три дополнения внизу из четырех, так что я люблю
01:08:12
откуда ты знаешь, что реакция нативная, чтобы ты мог
01:08:14
просто стиль, извини, что говорю стиль CSS
01:08:16
так быстро, правда, это как игра
01:08:19
чейнджер на моих глазах, все в порядке, так что мы
01:08:20
получил вид
01:08:22
и внутри здесь мне нужен значок звездочки
01:08:24
да, я действительно собираюсь импортировать
01:08:25
значки все вместе прямо сейчас, окей, так что
01:08:27
мы собираемся перейти на мой главный экран
01:08:29
и я собираюсь просто втянуть все свои
01:08:31
значки, э-э, за один раз, извините, не главный экран
01:08:34
экран карты ресторана
01:08:36
так что у меня будет две иконки из одной
01:08:40
из сплошного из контура, поэтому значок звезды
01:08:42
и значок маркера местоположения, окей, так что внутри
01:08:45
вид отсюда, я вообще-то пойду
01:08:47
и скажи значок звезды значок звезды и вот это
01:08:50
должен иметь зеленый цвет
01:08:53
окей, а потом мы скажем непрозрачность
01:08:56
я обновлял этот поппер-фанат
01:08:57
список воспроизведения, если вы хотите получить к нему доступ,
01:08:59
ссылка в описании, чтобы продолжить
01:09:01
и подпишитесь на всплывающую рассылку новостей
01:09:02
и именно так мы просто отправляем вам
01:09:04
бесплатно, мы вышлем вам бесплатный плейлист
01:09:06
сразу после этого, так что определенно стоит
01:09:08
это если ты любишь музыку, все в порядке
01:09:10
здесь мы собираемся сказать гибкий рулон
01:09:12
такой гибкий рулон
01:09:15
центр предметов
01:09:17
и пространство на оси X одного пространства
01:09:20
x из одного, вот с этим у нас все в порядке
01:09:22
точка, у нас есть текст
01:09:24
и внутри здесь
01:09:26
я собираюсь пойти дальше и сказать
01:09:28
хм, это будет рейтинг, так что я собираюсь
01:09:31
есть рейтинг здесь
01:09:33
рейтинг
01:09:34
и у меня будет маленькая точка, вот так
01:09:37
это будет рейтинг, ох, вообще-то, окей
01:09:39
и что я здесь сделал
01:09:41
я на самом деле пошел и сказал типа «окей»
01:09:43
Итак, первым делом я сделаю немного
01:09:44
точка так рейтинг
01:09:46
точечный жанр
01:09:48
хорошо
01:09:49
а потом
01:09:50
что ты можешь сделать, так это потому, что ты не можешь использовать
01:09:52
тег span правильно, если вы просто хотите
01:09:54
жанр быть рейтингом быть зеленым
01:09:56
простой способ сделать это: просто добавьте
01:09:58
еще один текстовый тег
01:10:00
включить это в него
01:10:02
а затем вы, по сути, идете вперед и просто
01:10:04
сделай это большим зеленым, и если я напишу этот текст
01:10:06
зеленый
01:10:08
500, а затем я создаю внешний текст
01:10:11
очень маленький
01:10:12
а затем текст серого цвета
01:10:15
и вот так, Пэм, мы получаем
01:10:18
стиль выглядит довольно отвратительно, ладно, правда
01:10:20
очень красиво под этим видом, я
01:10:23
у меня будет другой взгляд
01:10:25
так что у меня будет еще один взгляд здесь и
01:10:27
это будет для локации
01:10:28
маркер справа, чтобы он был рядом
01:10:29
например, цепляться за улицу, вот у меня есть
01:10:32
значок маркера местоположения, хм, вот этот
01:10:35
цвет будет серый
01:10:37
и тогда непрозрачность здесь непрозрачность
01:10:39
будет 0,4
01:10:41
размер 22 правильный размер эээ размер 22. все
01:10:45
очень хорошо, что текст здесь будет эээ
01:10:48
рядом с этой маленькой точкой, мне это нравится
01:10:51
маленькая точка, если ты меня увидишь, я добавлю все
01:10:52
мои сборки
01:10:54
а затем адрес
01:10:56
нажмите «Сохранить», давайте начнем стилизовать это так
01:10:58
текст очень мелкий, упс
01:11:00
стиль текста очень маленький
01:11:04
и текст серый из 500. окей, а потом
01:11:09
общий вид является причиной, потому что
01:11:11
прямо сейчас они сложены друг на друга
01:11:12
другое, потому что это изгибает колонку
01:11:15
по умолчанию нам нужно сделать это гибкой строкой
01:11:17
по умолчанию все представления, если вы этого не сделали
01:11:19
уже догадалась, что это гибкий интерфейс по умолчанию
01:11:22
правильно, чтобы ты знал, что тебе не обязательно говорить
01:11:23
флекс, э-э, космос, вот и все, хорошо, окей
01:11:26
классная штука, выглядит очень красиво
01:11:28
уже все в порядке, это осязаемо
01:11:30
непрозрачность, мы тоже ее стилизуем
01:11:32
Итак, этот общий контейнер, который мы собираемся
01:11:33
дайте ему белый фон, он собирается
01:11:35
таким образом иметь преимущество в размере троек
01:11:36
мы ставим их друг против друга, смотри
01:11:38
хорошо, а затем просто отделить его от
01:11:39
фон, который мы собираемся придать ему
01:11:40
небольшая тень у базовой тени и как
01:11:43
вы уже можете видеть потрясающую разницу
01:11:46
хорошо, теперь для этой избранной строки
01:11:49
чтобы помочь нам с тестированием, я
01:11:50
добавлю парочку, чтобы вы могли
01:11:52
видишь, у нас уже начинается хорошее
01:11:54
UI прямо сейчас, очевидно
01:11:57
у нас там есть суши, так что разбей
01:11:59
кнопка "палец вверх" и я куплю
01:12:01
у всех есть суши, но ты же видишь правильно
01:12:02
теперь это выглядит довольно хорошо, окей и
01:12:05
что мы хотим сделать сейчас, так это то, что мы хотим
01:12:06
заменить суши на настоящие из
01:12:09
задняя часть в порядке, поэтому мы хотим сделать это
01:12:10
выглядеть примерно так, так вот это
01:12:12
здесь Сани собирается подключиться
01:12:14
вот почему я думаю, что это хорошее время
01:12:15
добавить Сани в io, так что первое, что вам нужно
01:12:18
хочу сделать, ребята, это когда вы настраиваете
01:12:19
наберись здравомыслия, иди в Санни, и о, вперед
01:12:22
слэш санни, окей, первым делом я хочу тебя
01:12:25
Ребята, сделайте npm, установите Dash G Sanity
01:12:29
клиент, вам может понадобиться выполнить sudo и sudo
01:12:31
перед npm и идти вперед и на самом деле
01:12:33
установите это, потому что глобальная установка
01:12:35
иногда нужно больше прав и разрешений
01:12:37
тогда что мы собираемся сделать, это войти в
01:12:39
наш проект и введите следующее
01:12:40
подписка на купон на тире теперь я
01:12:42
всегда получаю вопрос, почему у меня есть
01:12:43
купон 22, ты меня так поддерживаешь
01:12:46
спасибо вам двоим, они дают вам хорошее бесплатное
01:12:49
квота, но где с помощью купона
01:12:52
у нас с ними хорошие партнерские отношения
01:12:53
они удваивают вашу бесплатную квоту на
01:12:55
абсолютно бесплатно, так что вы получите повышение
01:12:57
бесплатный план, хорошо, воспользуемся этим
01:13:00
буквально не приносит вам ничего, кроме пользы
01:13:02
окей, тогда умножь свои три четверти вдвое
01:13:03
получить тонны, как вы знаете, поддающихся проверке, э-э
01:13:06
пределы и кварталы, чтобы вы действительно могли
01:13:07
действительно определенно того стоит, окей, так что
01:13:09
этот момент теперь перейдет к нашему коду
01:13:11
команда j, я хочу, чтобы вы сделали следующее
01:13:14
окей, я хочу, чтобы ты пошел, Сани, и связал
01:13:16
купон Sony 22. окей, теперь то, что я хочу
01:13:19
делай, это говорит
01:13:21
Подтвердить купон, это похоже на тебя
01:13:22
у вас уже есть аккаунт для подписи, приятно, если
01:13:24
у тебя не было учетной записи для подписи
01:13:25
попросит вас войти в систему или вы все
01:13:27
просто введите sanity login и все будет
01:13:29
позвольте вам сделать это, имя проекта в этом
01:13:31
случай, я собираюсь доставить клон YouTube
01:13:34
хорошо
01:13:35
входить
01:13:36
и на данный момент это будет продолжаться
01:13:38
и начать создавать проект на
01:13:40
серверная часть здравомыслия, он попросит
01:13:42
набор данных в этом случае использует значение по умолчанию
01:13:44
набор данных да, все в порядке, мы можем продолжать
01:13:46
и нажмите Enter, по умолчанию это да
01:13:49
создаст для нас набор данных, я
01:13:50
собираюсь войти в систему, чтобы подписаться, чтобы вы могли видеть
01:13:52
все пути вывода проекта, которые я собираюсь
01:13:54
набрать в здравом уме, чтобы оно сохранялось
01:13:56
это очень аккуратно внутри моего каталога, так что
01:13:58
здравомыслие - это то, что я хочу назвать результатом
01:14:00
путь теперь вот где, в принципе, вы можете
01:14:03
начните с чистого проекта, не предопределенного
01:14:05
схемы и все такое, но что мне нравится
01:14:08
сделать, это просто начать с чего-то и
01:14:10
затем переделай его так, как я захочу, так что
01:14:12
таким образом мне не придется писать все
01:14:13
код с нуля, так что это легко
01:14:14
как это сделать правильно, перейдите к я иду
01:14:16
напишу в блоге, окей, и я собираюсь
01:14:18
изменить его на то, для чего он мне нужен
01:14:20
это то, что мне нравится делать, это скорее
01:14:21
ленивый способ, но мне нравится делать это правильно, я
01:14:23
просто быть с тобой настоящим, окей
01:14:25
600 лайков, ребята, поехали почти на
01:14:28
путь к 1000 лайков, потрясающие вещи
01:14:31
кто-то попросил плейлист для фанатов поп-музыки
01:14:32
это внутри описания, так что заходите
01:14:35
описание вы найдете это
01:14:37
окей, теперь, если ты видишь, что это на самом деле
01:14:40
открыл новую папку здравомыслия и это
01:14:42
это еще один каталог внутри этого места, окей
01:14:45
это действительно классная вещь, и это происходит
01:14:46
чтобы установить здравые зависимости, чтобы
01:14:48
на самом деле это установка
01:14:49
зависимости там сейчас, так что-то
01:14:51
знать и быть осторожным - это то, что
01:14:53
всякий раз, когда мы сейчас устанавливаем зависимости, мы
01:14:55
по сути, у нас есть два разных
01:14:57
места, где их можно установить
01:14:58
внутри этой фотографии или внутри
01:15:00
папка здравомыслия, потому что вы видите, что в ней есть
01:15:02
получил свой собственный пакет json, и у него есть
01:15:03
собственный пакет json этого не делает
01:15:04
ошибка, окей, просто говорю, убедись
01:15:06
вы находитесь в правильном месте, когда начинаете
01:15:08
установка вещей в проект правильно
01:15:10
вот и вы создаете проект по умолчанию
01:15:12
файлы
01:15:13
теперь, когда это будет сделано, это не должно занять
01:15:16
слишком долго, что мы получим
01:15:18
в конце концов это правильный пользовательский интерфейс, он будет настроен
01:15:21
для блога что-то вроде этого, но что
01:15:23
я хочу, чтобы ты сделал после этого
01:15:25
в общем, я просто собираюсь идти дальше
01:15:26
и быстро приостановить что-нибудь
01:15:28
хм ох, это напоминает мне о моем подергивании
01:15:30
дни, когда я стримлю такого рода
01:15:32
музыка, окей, и что мы получим
01:15:34
какой-то интерфейс, вот так, это называется
01:15:36
студия здравомыслия, и это, по сути,
01:15:38
платформа cms, которая позволяет нам идти вперед
01:15:40
и эффективно можно даже откатиться
01:15:42
разные версии, это действительно так
01:15:43
чертовски мощный, и ты можешь
01:15:45
на самом деле иметь несколько членов команды в
01:15:46
однажды в реальном времени просто сотрудничаем
01:15:48
как вы видите в Google Doc на самом деле
01:15:50
действительно крутая штука, ребята делают потрясающе
01:15:51
работа там, все в порядке, мы почти готовы
01:15:53
настроить сейчас
01:15:54
и потом, что я хочу сделать
01:15:56
собираюсь ли я пойти дальше и начать?
01:15:58
наш местный, так что обратите внимание, как хорошо это
01:16:01
на самом деле это развернутая студия здравомыслия и
01:16:04
я хочу это подчеркнуть
01:16:06
никто не сможет туда попасть, если ты попытаешься туда попасть
01:16:08
здесь и сейчас вам все равно придется войти в систему
01:16:09
с моей учетной записью, чтобы получить к ней доступ, но
01:16:12
это невероятно, ребята, просто примите это во внимание
01:16:14
на секунду я развернул cms
01:16:16
Платформа
01:16:17
живу по URL-адресу Sanity, и в принципе я могу
01:16:20
войдите в систему в любой точке мира и измените
01:16:22
данные на сайте в удобном для пользователя виде
01:16:24
так что вам даже не обязательно быть
01:16:25
разработчик, которого тебе не обязательно знать
01:16:26
что-нибудь об этом, ты можешь просто пойти туда
01:16:27
и обновить информацию, которая есть
01:16:29
действительно очень мощно, поверь мне, вот так
01:16:31
пока это происходит, я хочу сделать
01:16:33
я собираюсь нажать кнопку «Войти», и я
01:16:34
собираюсь пойти дальше и войти в свой
01:16:36
аккаунт на здравомыслии, чтобы показать тебе спину
01:16:38
конец, не студия, ладно, сейчас
01:16:41
вы можете увидеть клон доставки, который есть на YouTube
01:16:42
было построено, уведомление о том, как оно усилено
01:16:44
бесплатный план, поэтому я собираюсь перейти на него
01:16:46
здесь ты получишь все, что тебе нужно
01:16:48
ключей, ваши данные, все эти хорошие вещи
01:16:50
окей, на данный момент у нас есть участники
01:16:53
производство наборов данных, это то, что мы
01:16:55
настроим, когда мы закончим работу и
01:16:56
видишь студия не развернута
01:16:58
идентификатор проекта — это, по сути, то, что мы собираемся сделать
01:17:00
использовать для получения нашей информации
01:17:02
хорошо
01:17:03
такая классная вещь
01:17:04
теперь ты видишь, эй, все прошло успешно
01:17:07
прямо сейчас, что нам нужно сделать, это компакт-диск
01:17:09
в папку здравомыслия, так что обратите внимание, как
01:17:12
раньше я был в доставке, теперь я
01:17:14
в здравом уме, так что теперь я могу управлять своим рассудком
01:17:16
команда здесь первая, которую я хочу
01:17:18
нужно сделать, это ввести sanity start
01:17:21
это запустит мою студию здравомыслия
01:17:25
окей, давай продолжим и возьмем этот набор
01:17:27
и тогда я смогу показать тебе, что мы
01:17:28
должно быть все в порядке, так что я пойду
01:17:30
вперед и перейдите по этому URL-адресу локального хоста
01:17:33
давайте зайдем на наш локальный хост 3000. и
01:17:35
вы видите подключение к входу в систему вы видите
01:17:36
как он попросил меня войти в систему, и я
01:17:38
на самом деле собираюсь пойти дальше и войти в систему
01:17:40
мой аккаунт прямо сейчас
01:17:41
так что давайте войдем в систему прямо сейчас
01:17:44
на счет
01:17:47
и я вошел в систему, я вошёл в систему
01:17:49
это восстановление студии и как я
01:17:51
упомянул, что создан фиктивный блог
01:17:54
опубликуйте схему правильно, так что, если я продолжу и
01:17:56
создайте новый пост, например, вы можете
01:17:58
видите, у меня есть схема по умолчанию, которая
01:18:00
это дало мне то место, где у нас есть тело
01:18:02
опубликовать основное изображение этой категории, мы
01:18:04
собираюсь перестроить все это таким образом
01:18:06
это в основном структурировано таким образом
01:18:08
что я хочу этого, и это правильно, так что
01:18:10
у нас много ресторанных блюд
01:18:12
категории и избранные категории, поэтому
01:18:13
обо всем по порядку, давай сделаем это, и что
01:18:16
я хочу сделать это войти в команду b в
01:18:18
здравомыслие и я хочу заняться своими схемами
01:18:21
теперь, если мы перейдем к схеме, вы увидите это
01:18:23
по сути, здесь все
01:18:25
идет вперед и становится вроде как
01:18:27
объединены, поэтому я собираюсь сделать это
01:18:28
немного просто для тебя
01:18:30
вы можете видеть, что мы получаем разные типы
01:18:31
опубликовать категорию автора и заблокировать контент
01:18:34
и что мы имеем в этом случае
01:18:36
отдельные файлы схемы, поэтому в этом случае
01:18:38
сообщение, и это в основном синтаксис
01:18:40
за определение каждой из этих вещей так
01:18:43
что мы собираемся сделать сейчас, так это то, что я пойду
01:18:44
рассказать вам, как действовать дальше и
01:18:46
построить схемы для сегодняшних данных
01:18:49
структуры правы, поэтому в этом случае
01:18:50
первое, что мы собираемся сделать, это
01:18:51
ресторан, давай построим ресторан и
01:18:53
бежим так прямо сейчас, что мы
01:18:54
в основном делаешь, в основном идешь
01:18:56
вперед, и позвольте мне просто переместить это
01:18:57
путь на секунду
01:18:59
по сути, мы добиваемся этого
01:19:01
Схема ресторана в основном похожа на Стейси
01:19:03
говоря обо всех областях, которые мы
01:19:04
есть и все такое, я собираюсь пойти дальше и
01:19:05
сделай это прямо сейчас, так что первым делом ты
01:19:07
хочу сделать это написать в ресторане, окей
01:19:10
это может быть ресторан, он идет
01:19:12
быть, давай переименуем файл
01:19:14
так что это больше не будет постом, это будет
01:19:16
ресторан
01:19:17
dot js и да, давайте обновим импорт
01:19:20
так что мы увидели сейчас и название здесь
01:19:23
это будет документ
01:19:25
ой, извини, нет названия, извини, название будет отправлено
01:19:27
быть рестораном с большой буквы
01:19:30
документируйте теперь поля отдельно
01:19:31
поля, так что в основном то, что я здесь сделал
01:19:33
я сэкономлю тебе кучу времени, верно?
01:19:35
что я хочу, чтобы ты сделал
01:19:36
это идти до конца, во-первых, мы не
01:19:38
сегодня буду использовать предварительную версию, так что получите
01:19:39
избавиться от предварительного просмотра
01:19:40
и что я хочу, чтобы ты сделал
01:19:42
это удалить все внутри вашего
01:19:44
массив здесь, так что у вас должен быть
01:19:46
установите начальную точку вот так
01:19:47
теперь я хочу, чтобы ты сделал, это мы собираемся
01:19:48
добавить разные, так что во-первых
01:19:50
у нас есть имя, поэтому введите строку имени
01:19:52
привязано к названию его ресторана, вот что
01:19:54
появляется здесь, поэтому вы видите ресторан
01:19:55
имя, у тебя может быть даже описание
01:19:57
внизу, чтобы он вошел со светом
01:19:58
проверка серого текста, я это спрашиваю
01:20:00
это необходимо, окей, тогда я добавлю
01:20:02
еще через пару, так что добавлю
01:20:04
здесь есть еще несколько, так что я просто пойду
01:20:06
вставить их, и в принципе вы можете
01:20:08
не стесняйтесь поставить видео на паузу и
01:20:09
посмотреть краткое описание макс 200
01:20:11
Изображение символов — это изображение типа, поэтому оно
01:20:14
скоро появится средство выбора изображений
01:20:16
число для широты и долготы, адрес представляет собой
01:20:18
строка, которую мы собираемся потребовать, поскольку
01:20:20
ну, я только что показал, что ты можешь
01:20:22
Требуйте одних, не требуйте других, и я
01:20:24
собираюсь сделать то же самое даже для
01:20:26
рейтинг правильный, поэтому на данный момент для
01:20:28
рейтинг у нас есть рейтинг, который представляет собой
01:20:30
номер введите число от единицы до
01:20:32
пять сейчас за подтверждение, я говорю
01:20:33
это обязательно, но минимальное значение –
01:20:35
один, максимум пять, и если вы войдете
01:20:38
за пределами этого это тебя отругает
01:20:40
и скажите, пожалуйста, введите значение между единицей
01:20:41
и пять, очень очень чистые вещи
01:20:43
правильно, следующее, что нам нужно сделать, это
01:20:45
на самом деле есть
01:20:47
тип и посуда, так что я собираюсь
01:20:49
объясни, что это правильно, чтобы у нас было
01:20:50
введите и заголовок, э-э, тип — это строка
01:20:53
здесь требуется проверка, но обратите внимание
01:20:55
как это отсылка, извините, это
01:20:58
неправильно, э-э, этот тип
01:20:59
ссылка, окей, и это ссылка
01:21:02
в категорию, поэтому здесь вы можете сделать следующее:
01:21:04
соединить все, чтобы у нас было
01:21:06
отдельная категория меню, я действительно могу пойти
01:21:09
вперед и укажите это внутри здесь
01:21:12
да, это действительно мощно, ребята
01:21:13
правильно, вы действительно можете сослаться на свой
01:21:15
категория и то же самое для блюд, вот я
01:21:17
у меня есть множество блюд, которые у меня есть
01:21:20
там настроена отдельная схема
01:21:22
правильно, так
01:21:23
здесь у нас есть массив ссылок
01:21:26
два типа блюд, хорошо, надеюсь, что
01:21:28
теперь имеет смысл подключить это, я пойду
01:21:31
снова здесь, и я хочу сделать это
01:21:33
я просто меняю пост
01:21:35
в ресторан
01:21:37
окей, рестораны, которые мы создаем
01:21:38
заявление об импорте, и мы пойдем
01:21:40
вперед и скажи ресторан, теперь мы закончили
01:21:42
наш первый вид рефакторинга, вот так
01:21:44
опять же, тебе не обязательно это делать, ты можешь
01:21:46
начни с чистого листа, где захочешь, но
01:21:48
вот как я сделал это правильно для
01:21:49
категория, в которую мы действительно собираемся пойти
01:21:51
вперед и оставьте это как категорию, но я
01:21:53
собираюсь изменить заголовок здесь на меню
01:21:55
категория
01:21:56
и это будет в основном
01:21:58
как тип еды, жанр еды
01:22:00
это приближается, поэтому ты хочешь
01:22:01
измените эти поля на
01:22:03
вместо этого следующие поля, хорошо, так что это
01:22:06
категория сделана, следующее, что я хочу
01:22:08
нужно создать блюдо под названием "блюдо", так что давайте
01:22:10
избавьтесь от блочного контента, который нам не нужен
01:22:11
давайте обратимся к нашему автору и просто
01:22:14
введите блюдо
01:22:15
хорошо
01:22:16
теперь здесь, да, нажмите «да», чтобы увидеть блюдо
01:22:19
мы собираемся назвать имя
01:22:21
будет блюдо, название будет
01:22:24
быть блюдом с большой буквы тип типа
01:22:26
документ, а затем для полей, которые я хочу
01:22:28
пойти дальше и избавиться от этого
01:22:29
включая предварительный просмотр
01:22:32
хм
01:22:33
там будет закрывающая скобка
01:22:34
вот и поехали, а потом я пойду
01:22:36
чтобы пойти дальше и добавить следующее
01:22:38
окей, я возьму следующее
01:22:40
вещи внутри здесь, так что это просто
01:22:41
в основном поле схемы, поэтому имя короткое
01:22:44
описание цена и изображение
01:22:47
правильно, в данном случае это то, что будет
01:22:48
нести ответственность за создание этого
01:22:51
прямо здесь, окей, надеюсь, это так
01:22:53
это имеет смысл прямо сейчас, ты видишь хрустящий
01:22:55
лосось например и тому подобное
01:22:56
сюда все проходит, окей, так что
01:22:58
выглядишь неплохо, окей, у нас есть
01:23:00
все вниз, у нас также есть
01:23:04
вкладка «Избранное» тоже так, «Избранное»
01:23:08
dot js, это будет другое поле
01:23:10
теперь что касается этого, я собираюсь пойти дальше и
01:23:12
вставь все, быстро объясни
01:23:14
это правильно, значит, у вас есть имя
01:23:16
название документа в данном случае
01:23:18
избранное меню с категориями справа и
01:23:20
у нас есть короткие имена полей
01:23:22
описание и рестораны, которые
01:23:24
тип массива, который представляет собой массив
01:23:26
ссылки на ресторан, окей, вот и все
01:23:29
нам нужно соединить их все вместе и
01:23:31
получить все это, как ты знаешь, работает так
01:23:33
в этот момент
01:23:35
мы пойдем сюда, и я переоденусь
01:23:37
это для того, чтобы у нас не было блокировки контента, который мы
01:23:38
давай просто избавимся от этого, давай
01:23:40
сделай это с нуля, давай сделаем это
01:23:41
как следует, ладно, давай избавимся от этого
01:23:45
хорошо, итак
01:23:47
в этот момент
01:23:48
мы просто собираемся пойти дальше и начать
01:23:49
импорт в разных типах, поэтому
01:23:51
у нас есть категория, которую нам нужно
01:23:52
забери, у нас тоже есть блюдо, которое мы
01:23:55
нужно будет импортировать, и у нас также есть
01:23:57
избранные
01:23:58
хорошо, и вот что я сделал, это я
01:24:00
в общем, давай и скажи: «ОК, у меня есть»
01:24:02
пошел вперед и создал все это
01:24:03
разные схемы строят его из этого
01:24:05
окей, а теперь, если я пойду к своему, эээ
01:24:09
localhost тот, который мы
01:24:11
только что заметил, как это изменилось с
01:24:12
этот блог настроен на
01:24:14
эта установка прямо там, где у нас есть
01:24:16
ресторанов, так что если бы я хотел создать наш
01:24:17
первый ресторан, который я увидел
01:24:18
нандос, например
01:24:20
краткое описание потрясающая курица
01:24:24
да, ты можешь добавить изображение, чтобы иметь возможность
01:24:25
обратите внимание, как вы можете загрузить изображение и
01:24:27
и так далее, и это может всплывать так очевидно
01:24:29
прямо сейчас у меня есть куча случайных изображений
01:24:31
на моем компьютере, давай просто окунемся в
01:24:34
пример
01:24:35
ну, я имею в виду, у меня есть суши, так что пойдем
01:24:38
вперед, и приготовь суши здесь, хорошо, так что
01:24:39
я добавил суши, поехали
01:24:41
вперед и добавь немного суши
01:24:43
сегодня давай просто скажем: йо суши, верно
01:24:46
плохие суши, потрясающие суши
01:24:50
а затем представьте, что у вас есть свобода действий
01:24:52
20,4 я не знаю, у меня будет 0,4
01:24:54
у меня уже установлено множество этих вещей
01:24:56
адрес ресторана, он мог бы быть таким
01:24:57
две три главная улица что угодно
01:25:00
хорошо, вот что появится
01:25:01
скажем, это была категория 4,5 звезды
01:25:04
правильно, и если у тебя их нет
01:25:06
категории, которые вы можете создавать здесь
01:25:08
и ты можешь даже это очень просто ты
01:25:09
можно пойти дальше и выложить изображение
01:25:10
категория и т. д., то же самое с
01:25:12
блюда, ты можешь сделать то же самое, правильно
01:25:14
вы можете создать блюдо, добавьте свои блюда, чтобы
01:25:16
ребята, я сделал то, что на самом деле сделал
01:25:19
уже заполнил всю эту информацию
01:25:20
поэтому я пошел дальше и создал множество
01:25:22
посуда и все такое, и вот как я
01:25:23
дошёл до того, что я был здесь
01:25:25
со своим собственным клоном доставки, так что я пойду
01:25:27
чтобы избавить нас от хлопот здесь и сейчас
01:25:29
переключись на мой, который уже есть
01:25:31
предварительно заполнено информацией, хорошо и
01:25:33
я покажу тебе как его подключить и так
01:25:35
вперед, но все, что вам нужно будет сделать в
01:25:36
этот пункт добавляется ко всем вашим
01:25:38
ресторанов и убедитесь, что однажды
01:25:40
ты добавил это в ребята, которых ты нажал
01:25:41
кнопка публикации, окей, на этом этапе
01:25:44
представь, если бы мне хотелось внести изменения в свой
01:25:46
Вагон мама, добро пожаловать в Агаму, бла
01:25:48
бла и восклицательный знак
01:25:50
как кнопка публикации становится зеленой i
01:25:52
нужно опубликовать это изменение
01:25:54
а потом подожди секунд 10
01:25:56
15 секунд на распространение, а затем
01:25:58
это будет прямая трансляция, так что вы видите, что я
01:26:00
получил широту и долготу фактической
01:26:01
рестораны здесь, так что я действительно пошел
01:26:03
вперед и избавил вас от хлопот
01:26:04
прямо здесь, чтобы вы, ребята, могли свободно
01:26:06
сделай это со своей стороны, и тогда ты сможешь идти
01:26:08
вперед и сделай это сам, ладно, так что на этом
01:26:09
точка, теперь мы пойдем вперед и
01:26:11
соедините все правильно, так что это
01:26:13
Схема все сделано, чтобы я мог
01:26:15
закрой это, я могу закрыть это, я
01:26:17
теперь могу закрыться, что мне нужно сделать, это я
01:26:20
мне нужно иметь возможность соединиться со своим здравомыслием
01:26:21
бэкэнд из внешнего интерфейса прямо сейчас, как
01:26:24
черт возьми, я это делаю, и что
01:26:25
я собираюсь сделать то, что я собираюсь сделать
01:26:27
вообще-то иди и установи что-нибудь
01:26:29
позвонил здравомыслящему клиенту, окей, я
01:26:32
собираюсь выполнить команду j
01:26:34
и где здесь моя студия
01:26:36
что я на самом деле собираюсь сделать сейчас, это
01:26:37
очевидно, у нас здесь разделенная сковорода
01:26:39
панель здесь, я просто собираюсь создать
01:26:40
отдельный гм
01:26:42
терминал, так что вы видите, что у меня есть мой
01:26:43
двойной терминал, и у меня есть отдельный
01:26:45
один здесь, я помню, клон доставки, мы
01:26:47
внутри не в здравом уме, вот так вот
01:26:49
я собираюсь выполнить установку npm
01:26:51
и я скажу здравомыслящий клиент и
01:26:53
я тоже собираюсь пойти дальше и сказать
01:26:54
здравомыслие
01:26:56
URL изображения справа, я просто хочу удвоить
01:26:59
проверьте еще кое-что, так вот
01:27:01
хорошо, да, итак, у нас есть здравомыслящий клиент и
01:27:03
URL-адрес образа здравомыслия, я собираюсь установить
01:27:05
эти две зависимости такие вот
01:27:07
позволит нам начать использовать
01:27:08
вещи, которые нам нужны, чтобы идти вперед и получить
01:27:10
это взлетает с мертвой точки, так что
01:27:12
мы установили эти две зависимости
01:27:14
теперь мне нужно создать файл
01:27:16
на телефоне спереди, так что если я пойду
01:27:18
package.json на верхнем уровне, я собираюсь
01:27:19
чтобы создать новый файл с именем sanity.js
01:27:23
окей, вот здесь и происходит волшебство
01:27:24
вот куда мы в основном и идем
01:27:25
вперед и иметь разумную настройку назначения
01:27:28
подключение к бэкэнду от нашего
01:27:31
отреагируйте на родное приложение, окей, и что я собираюсь сделать
01:27:33
я хочу сказать минусы клиента
01:27:35
равно здравомыслящий клиент
01:27:38
а затем я передаю объект, теперь все в порядке
01:27:40
вот что я могу сделать, это передать
01:27:42
идентификатор проекта, теперь вы можете использовать среду
01:27:44
переменные в этом случае я пошел вперед
01:27:46
и избавил нас от этих хлопот, я просто
01:27:48
собираюсь продолжить и реализовать проект
01:27:50
id, который является идентификатором моего проекта
01:27:53
клон доставки, который я предварительно настроил
01:27:56
вперед вправо, если вы хотите найти свой
01:27:57
идентификатор проекта, это можно сделать двумя способами
01:27:59
я собираюсь показать вам обоим, сначала иди
01:28:01
твой Сани зайди в свой пакет JSON и
01:28:04
вы увидите, что есть идентификатор проекта
01:28:07
извиняюсь, подписываю ваш проект в формате JSON
01:28:10
идентификатор здесь, окей, так что это один из твоих
01:28:12
идентификаторы проектов, которые вы можете найти, или если вы
01:28:14
войдите в серверную часть, вы увидите это
01:28:16
идентификатор проекта также здесь, хорошо, но как
01:28:19
я уже упоминал, что собираюсь использовать
01:28:20
тот, который я предварительно настроил заранее
01:28:23
чтобы сэкономить нам немного времени, чтобы у меня не было
01:28:24
чтобы ввести все это в следующем
01:28:26
то, что я хочу сделать, это набор данных
01:28:27
мы собираемся сказать, что использование cdn - это
01:28:30
правда, таким образом это своего рода оптимизирует
01:28:32
кэширует данные в граничной сети и
01:28:34
тогда для версии API просто используйте
01:28:36
тот, который я использовал здесь, это последний раз, когда я
01:28:37
поверьте версии API для API, окей
01:28:41
на этом этапе давайте продолжим и скажем const
01:28:43
строитель, так что это связь с
01:28:44
задняя часть, а потом что я собираюсь делать
01:28:46
я собираюсь иметь что-то под названием
01:28:47
строитель, вот что он делает, это
01:28:48
в основном это позволит нам на самом деле
01:28:50
у нас есть конструктор изображений, поэтому всякий раз, когда у нас есть
01:28:51
получил изображения, которые я в основном настроил и
01:28:53
добавлено здравомыслие, мне нужно их сбросить
01:28:56
и получить от них URL-адреса или иногда
01:28:58
вот что я собираюсь сделать
01:28:59
создай маленького помощника, я скажу
01:29:01
экспорт константный экспорт
01:29:03
const и это будет
01:29:05
в основном URL4
01:29:07
и что мы делаем, так это берем источник
01:29:09
и мы просто собираемся вернуться
01:29:11
builder.image
01:29:13
из исходного кода, так что это
01:29:14
вспомогательная функция, которую мы собираемся использовать
01:29:15
позже, окей
01:29:17
теперь есть несколько вещей, которые нам нужны
01:29:19
сделать, чтобы избавиться от этого
01:29:21
заземлен и работает, все в порядке, поэтому я хочу
01:29:23
покажу тебе, чем мы там занимаемся, в основном у меня есть
01:29:25
добавил этот небольшой фрагмент и получил
01:29:27
общедоступный репозиторий GitHub, если вам нужен код
01:29:29
ты тоже можешь купить его там, это
01:29:30
как мы можем работать на это или покупать это
01:29:32
как ты это делаешь правильно, вот сейчас
01:29:35
один из них - добавить исключение, вы можете
01:29:37
либо зайдите в папку здравомыслия
01:29:39
и добавьте исключение для курса
01:29:40
политику, или вы можете сделать это здесь, я
01:29:43
поверь, это здесь, доступ к API
01:29:47
здесь причина происхождения, поэтому в этом случае вы
01:29:48
можно внести в белый список все источники происхождения, так что
01:29:50
здесь ты можешь пойти дальше и сделать это
01:29:51
после того, как ты можешь сказать, эээ
01:29:54
локалхост 3000 например
01:29:57
или если у тебя было, давай просто представим, что мы
01:29:59
вроде 19006 это еще один правый
01:30:03
в основном он работает на нашем локальном хосте для
01:30:04
реагировать нативно, если я хочу сделать это из
01:30:06
Эм-м-м
01:30:07
терминал, я могу это сделать, я могу пойти сюда, я
01:30:09
могу прийти в себя, и я могу в принципе
01:30:12
введите следующее
01:30:13
и это по сути внесет его в белый список
01:30:14
правильно, подписав в 1906 году
01:30:17
и это будет продолжаться и
01:30:18
внесите это в белый список для нас, окей
01:30:21
так что это еще один способ сделать это как
01:30:22
Ну ладно
01:30:24
так
01:30:25
у меня сейчас работают две вещи
01:30:27
правильно, поэтому в этом случае следует
01:30:28
полномочия да, все в порядке, мы собираемся
01:30:29
действительно разрешить это в данном случае
01:30:31
потому что происхождение успешно добавляет
01:30:33
потрясающая вещь
01:30:34
хорошо, окей
01:30:35
так
01:30:36
это какой-то трюк, который ты
01:30:38
могу сделать сейчас, если заметишь, если я должен был
01:30:40
обновите это, у нас должен быть 1906 год на
01:30:42
причина происхождения, так что представьте, как только вы
01:30:44
разверните это, как только оно станет активным, вы
01:30:46
мне придется внести в белый список твои вещи как
01:30:47
ну, правильные учетные данные не разрешены, э-э, мы
01:30:49
надо было выбраться сейчас, все в порядке
01:30:51
но теперь я просто удалю это
01:30:53
я позволю это через секунду, так что
01:30:55
я собираюсь заняться здравомыслием, эээ 3000
01:30:59
и я разрешу учетные данные
01:31:00
быть передано, иначе вам придется поставить
01:31:02
ключ API, я не буду переходить к нему
01:31:04
все, что сегодня у него получится
01:31:05
нам легко, окей, на данный момент у нас есть
01:31:08
у нас есть связь со здравомыслием спереди
01:31:09
конец, но я собираюсь закончить нашу
01:31:11
жизнь немного проще и покажу тебе еще один
01:31:13
трюк, а потом мы собираемся просто
01:31:14
резюме из моего здравомыслия, э-э, так что
01:31:18
в общем, как только ты обретешь здравомыслие
01:31:20
представь, как у меня было
01:31:22
клон доставки, который я добавил
01:31:24
вся моя информация, и я хочу развернуть
01:31:25
это правильно, это так легко сделать
01:31:28
все, что вам нужно сделать, это разумно развернуть, как только вы
01:31:30
внутри папки sani это делает следующее
01:31:33
он пойдет дальше и предоставит вам студию
01:31:34
имя хоста, поэтому в этом случае я мог бы иметь
01:31:35
было как доставить
01:31:37
солнечный ютуб и это будет продолжаться и
01:31:39
создать как доставку в воскресенье
01:31:41
youtube.comstudio и это будет
01:31:42
на самом деле развернуть это в прямом эфире, что означает
01:31:45
я могу войти в систему из любой точки мира
01:31:47
и получить доступ к этой платформе CMS, хорошо сейчас
01:31:50
я пошел дальше и сделал это, я собираюсь
01:31:51
отрежь это, но это будет продолжаться
01:31:53
и построить его, я уже это сделал
01:31:55
мой старый проект и теперь он живет здесь
01:31:58
URL здесь, так что звучит клон доставки
01:32:01
студия, так что в этом суть того, что
01:32:03
вы, ребята, должны быть в состоянии следить за
01:32:05
разверните его, запомните, если сделаете что-нибудь
01:32:06
изменения в вашем местном языке, которые у вас будут
01:32:08
перераспределить ваш бэкэнд, окей
01:32:10
это просто то, что нужно знать, окей
01:32:12
Итак, с этим сказано и сделано, давайте начнем
01:32:15
получение информации из наших бэкэндов
01:32:16
у нас есть вся эта информация здесь, в
01:32:18
задняя часть, как, черт возьми, мне идти дальше
01:32:20
и вытащи это сейчас, так что первое, что я хочу
01:32:22
сделать, это перейти к
01:32:24
мой главный экран, давай сначала сделаем это, хорошо, сейчас
01:32:27
внутри здравомыслия мы имеем право
01:32:30
что-то под названием грок, окей, я
01:32:32
собираюсь загрузить это локально
01:32:34
так что здравомыслие, ну, хватит, дай мне секунду, я
01:32:36
запускаю это локально, потому что правильно
01:32:38
теперь у нас нет этой вкладки «Видение», поэтому
01:32:40
что тебе придется сделать, это начать
01:32:41
это локально, так что то, что мы делали раньше
01:32:42
в основном сделал так, что подписывая, вы начинаете здесь
01:32:44
так что беги, здравомыслие, начни, я уже это запустил
01:32:47
на моем другом экране, так что на этом
01:32:49
случае, я загружаю это прямо сейчас
01:32:53
и это не должно занять слишком много времени
01:32:56
вообще-то я уже занимаюсь этим, что
01:32:57
это неправильно, я собираюсь отрезать это
01:33:00
и я собираюсь запустить свой старый
01:33:03
чтобы показать вам, ребята, о чем я говорю
01:33:05
хорошо
01:33:06
давай, Джей, мы делаем потрясающие вещи
01:33:08
очень хорошо, ребята, почти 700 лайков
01:33:11
Давайте продолжим
01:33:12
окей, на этом этапе пока мы ждем
01:33:15
для этого чтобы загрузить
01:33:17
в основном то, как мы запрашиваем информацию
01:33:19
из серверной части Sanity CMS мы используем
01:33:22
то, что называется грок, грок потрясающий
01:33:24
да, это их собственный синтаксис, но
01:33:26
действительно приятно, когда тянешь
01:33:28
информацию в такой форме, которая
01:33:30
похоже на график, вы говорите, что хотите
01:33:32
и вы указываете только те поля, которые вы
01:33:34
хочу, и это вернет тебе
01:33:36
информацию, поэтому то, что мы можем сделать сейчас, это мы
01:33:39
можно перейти к
01:33:41
наш локальный хост
01:33:42
333, и посмотрим, что у нас получится, верно
01:33:45
Итак, я загрузил все свои вещи, и я
01:33:48
сейчас перейду на вкладку «Видение»
01:33:50
на вкладке видение вы можете проверить
01:33:52
запросы, поэтому вот пример, где мы
01:33:54
в основном запрашивает тип
01:33:56
избранное, так что помните избранное
01:33:58
категории имели правильный тип, поэтому внутри
01:34:00
схема там была типа показанного
01:34:03
окей, если мы вернемся к этому названию
01:34:05
был представлен, так что я делаю то, что я
01:34:06
говоря запрос обо всем с помощью
01:34:08
введите избранное и верните обратно все
01:34:11
поля и внутри них у нас есть
01:34:13
рестораны и так далее, так что я собираюсь
01:34:14
объясни это через секунду, так что если бы мне нужно было
01:34:16
запросите это, например, обратите внимание, как это
01:34:18
верни мне все это прямо сейчас
01:34:20
я собираюсь я собираюсь порезаться
01:34:21
это на секунду
01:34:23
но если бы я просто пошел вперед и сделал
01:34:24
это верно, оно вернет все назад
01:34:27
разные варианты, так что это три
01:34:29
избранные строки правы, поэтому сначала посмотрите здесь
01:34:31
у нас есть три избранных строки, это
01:34:33
именно то, что сюда возвращается, окей
01:34:35
но обратите внимание, что в каждом из них есть рестораны
01:34:38
теперь это ссылки
01:34:39
правильно, если я хочу пойти дальше и
01:34:42
в основном выведите эти ссылки, чтобы
01:34:44
таким образом, это показывает мне полностью
01:34:46
информация об этой ссылке, что я могу
01:34:49
теперь сделай, я могу сказать: ладно, иди хорошо
01:34:52
во-первых, я хочу выполнить предварительную стрельбу, это делает
01:34:53
это выглядит так ужасно
01:34:54
хм
01:34:56
окей, извините за это, ребята, но
01:34:58
да, в общем, что мы собираемся делать
01:34:59
я имею в виду, да, все в порядке, мы
01:35:00
собираемся жить с этим правильно, поэтому мы говорим: иди
01:35:02
в массив ресторана, так что этот
01:35:04
Прямо здесь
01:35:05
разверните его в принципе правильно и здесь дайте
01:35:09
мне все, и снова я просто не
01:35:11
здесь это оптимально, но я говорю
01:35:12
дай мне все, а еще есть
01:35:13
ссылка на блюда там расширит это
01:35:16
и дай мне все и за типы
01:35:18
я просто назову мне правильное имя, если побегу
01:35:21
теперь обратите внимание, что мы только что сделали правильно
01:35:23
так что теперь требуется секунда, чтобы выполнить это
01:35:25
дает мне полный ресторан вместо
01:35:27
просто пустая ссылка, и если я войду в
01:35:29
тип, который также был ссылкой на него
01:35:30
дает мне только имя, если я должен это сделать
01:35:33
точка-точка-точка, это дало бы мне все
01:35:34
информация из типа, так что если бы я это сделал
01:35:36
это сейчас я перехожу к типу, ты видишь, как это
01:35:38
дает мне всю информацию правильно, так что
01:35:39
ты можешь быть очень добрым, если ты знаешь
01:35:41
хотите быть супероптимальными, вы можете только
01:35:43
типа просто спроси, чего ты хочешь, но
01:35:44
этот синтаксис стрелки означает расширение
01:35:46
ссылка, окей, это наш первый вид
01:35:49
важный вопрос, а теперь то, что я хотел
01:35:51
здесь я в основном говорю тебе
01:35:52
знай, если ты хочешь только получить
01:35:54
первый аргумент назад, поэтому в этом случае
01:35:56
первую избранную строку, вы можете сделать это и
01:35:58
и так далее, там много классных вещей
01:35:59
ты можешь сделать это, я собираюсь показать
01:36:00
вы, как мы сейчас используем это на переднем конце
01:36:02
хорошо, итак
01:36:04
переходим на главный экран вправо
01:36:06
теперь давай перепрыгнем туда, на главный экран
01:36:09
хм, то, что мы хотим сделать, это вместо
01:36:10
вот такие избранные строки, я иду
01:36:11
начать тянуть его с заднего конца
01:36:13
ОК, первое, что нам нужно сделать, это
01:36:15
часть штата, чтобы следить за этим, так что
01:36:17
мы собираемся сказать, что этот кусок
01:36:18
штат будет называться избранным
01:36:19
категории сейчас, если что-то из этого не
01:36:21
имеет смысл, что государство поддерживает все это
01:36:23
много видео на канале есть
01:36:25
видео выскакивает на экране справа
01:36:26
теперь, если ты смотришь повтор, который
01:36:28
предназначен для использования. Укажите, как вы остаетесь внутри
01:36:30
из реакции есть еще одно видео, которое
01:36:32
сейчас выскочит, что происходит
01:36:34
быть для реквизита внутри реакции, и если
01:36:36
ты действительно хочешь сделать шаг
01:36:37
присоединяйтесь к нам на правильном сайте act.com
01:36:40
или ознакомьтесь с бесплатным курсом, который мы
01:36:42
предложить основы реагирования 101, все ссылки
01:36:44
в описании так и будет
01:36:46
помочь тебе, есть масса способов, которыми я могу
01:36:47
могу научить тебя, как все это работает
01:36:49
право на бесплатный набор категорий
01:36:52
категории
01:36:55
используйте состояние, я собираюсь его импортировать
01:36:57
откуда оно пропало, да и откуда
01:36:59
реагировать, поэтому первая начальная часть
01:37:01
состояние, которое мы собираемся назвать пустым
01:37:02
массив в порядке, поэтому изначально рекомендуемый
01:37:05
вкладки сейчас будут пусты, ты
01:37:06
мы собираемся использовать что-то под названием
01:37:07
Эффект использования Эффект макета использования — это когда
01:37:09
пользовательский интерфейс по существу загружает пользовательский эффект, когда
01:37:12
сам компонент, поэтому функционал
01:37:14
компонент загружается теперь, это означает, что запуск продолжается
01:37:17
первая начальная загрузка, а затем нет
01:37:18
беги потом, так это имеет смысл, верно
01:37:20
ну в данном случае я просто хочу как можно скорее
01:37:22
поскольку это загружает этот компонент, я хочу
01:37:24
чтобы получить материал из задней части
01:37:26
окей, по сути, то, что я сейчас делаю, это я
01:37:28
введите Sanity Client прямо в этом
01:37:31
если я сделаю клиент, он его импортирует
01:37:33
отсюда я собираюсь переименовать это в
01:37:34
здравомыслие
01:37:36
клиент
01:37:37
чтобы вам было легче, ребята
01:37:39
и теперь я могу сказать: Sony Client Dot Fetch
01:37:42
прямо сейчас я хочу, чтобы ты сделал это
01:37:45
всякий раз, когда ты делаешь это, делай то же, что и я
01:37:48
давай, проверь свой
01:37:51
запрос на серверной стороне здесь, поэтому в этом
01:37:52
случай, это мой вопрос, который я только получаю
01:37:55
все избранные поля, которые вы знаете, получают все
01:37:58
из них, поэтому в этом случае верните три, см.
01:38:00
платные размещения, все делают сочно
01:38:02
скидки и т. д. и т. д. и т. д.
01:38:04
затем в основном расширьте ссылку
01:38:06
правильно, так что сначала протестируй это здесь
01:38:08
скопируйте это правильно, чтобы знать, что это работает
01:38:11
тогда я хочу, чтобы ты напал
01:38:13
из выборки делайте обратные кавычки
01:38:16
и в основном то, что мы здесь делаем, это
01:38:18
вставьте этот запрос, окей
01:38:21
как только это вернется к нам, все пройдет
01:38:23
чтобы вернуть некоторые данные
01:38:25
хорошо
01:38:26
эти данные мы собираемся установить как
01:38:28
наши избранные категории
01:38:30
хорошо
01:38:31
и теперь то, что мы делаем, находится на
01:38:33
загрузка начальной страницы, что происходит, ох
01:38:35
нам действительно нужно пойти дальше и сделать это
01:38:37
использовать эффект, реагировать
01:38:39
окей, это работает очень хорошо, окей, это
01:38:41
выглядит тоже очень красиво, ну и что
01:38:43
мне бы хотелось, что бы я тебе порекомендовал
01:38:45
могу сделать вот это, если получится немного
01:38:47
немного сбивает с толку, и ты такой добрый с твоей стороны
01:38:49
знай, ты немного похож на эй, сынок, который у меня есть
01:38:51
понятия не имею, как отладить, какого черта ты
01:38:53
просто хорошо сделал то, что я бы порекомендовал
01:38:54
то, что ты делаешь сейчас, это просто быстрая проверка
01:38:57
войдите в консоль и скажите, что это избранное
01:39:00
категории, окей, а потом что ты будешь делать
01:39:02
тебе, наверное, интересно, о боже мой, я
01:39:03
невозможно отладить его, если вы удерживаете команду d
01:39:05
здесь вы действительно можете поднять это и
01:39:06
отлаживать, но я не люблю отлаживать, например
01:39:08
вместо этого я сделаю следующее: я
01:39:10
собираюсь открыть веб-версию, которую я
01:39:12
иди сюда, и я проверю
01:39:14
и теперь вы можете видеть, что я получаю журнал консоли
01:39:16
на экране, или если вы действительно
01:39:17
хочу посмотреть, что у тебя в журналах
01:39:19
могу открыть твою команду j
01:39:22
и вы можете видеть, что это действительно происходит
01:39:23
журналы, когда все работает правильно, поэтому, если я
01:39:25
было очистить мои журналы, и я должен был
01:39:27
обновить или р
01:39:29
я всегда строю полностью, так и будет
01:39:31
перезагрузись, и тогда ты увидишь, что я тоже доберусь сюда
01:39:32
но, очевидно, это немного раздражает
01:39:34
посмотри на этот вид, это дает нам приятное
01:39:36
небольшой обзор, чтобы вы могли видеть, что я тяну
01:39:38
в нашей серверной части от Сани
01:39:41
сюда также входят все рестораны
01:39:43
и мы можем использовать это сейчас, чтобы на самом деле
01:39:45
реализовать пользовательский интерфейс спереди, окей
01:39:48
пока хороший прогресс, я собираюсь избавиться
01:39:50
из журнала консоли, окей, у нас есть четыре
01:39:53
первым делом получил категории функций
01:39:54
я собираюсь сделать сейчас, это спуститься к нам
01:39:59
эх, где мы рендерили
01:40:02
избранные строки ранее
01:40:04
и вместо этого я собираюсь сделать сейчас
01:40:05
я скажу окей
01:40:07
jsx
01:40:08
избранный
01:40:09
категории
01:40:11
категории да, я вообще это заметил
01:40:14
нужные категории, гм
01:40:18
я не думаю, что у меня не было категорий, да
01:40:20
избранные категории, э-э, точка и один
01:40:23
Windows, я делаю дополнительную цепочку, поэтому
01:40:24
в случае, если по какой-либо причине в
01:40:26
вначале оно будет неопределенным, поэтому
01:40:27
таким образом, мы не хотим быть добрыми с тобой
01:40:28
знаю, игнорируй это, но это пустые массивы
01:40:30
должно быть хорошо, но все же я прав, я пойду
01:40:32
говорить каждый раз, когда мы проходим через это
01:40:34
есть категория, теперь вы можете использовать
01:40:36
плоский список и здесь права не получить
01:40:38
в замешательстве, вы можете использовать простой список, но я
01:40:40
собираюсь использовать простой вид
01:40:42
по сравнению с тем, что мы обычно используем
01:40:43
чтобы реагировать на родную реакцию в следующих шахматах
01:40:47
тогда что я собираюсь сделать, так это пойти
01:40:48
в основном использовать избранную строку, но
01:40:50
вместо того, чтобы использовать этот набор вещей
01:40:52
я сейчас тоже сначала вспомню
01:40:54
всякий раз, когда вы что-то прокручиваете
01:40:56
всегда включайте ключ, в этом случае
01:40:57
категория здесь будет идентификатором категории
01:41:00
и тогда идентификатор здесь будет категорией
01:41:02
я бы назвал заголовок
01:41:05
категория.название, э-э, введите имя, извините
01:41:07
категория.имя, и это взято из
01:41:09
серверная часть теперь так очевидно, что у меня есть
01:41:11
готово, я сделал всю работу за тебя
01:41:12
но я в основном консолью логи, чтобы иметь возможность
01:41:14
посмотри, тогда я в основном использую
01:41:16
соответствующие значения соответственно, поэтому это
01:41:18
это будет точка категории
01:41:20
описание, ох, оно на самом деле короткое
01:41:21
описание краткое описание, так что если вы
01:41:23
обратите внимание, здесь у нас есть краткое описание
01:41:26
хорошо
01:41:27
теперь, если я нажму «Сохранить»
01:41:28
бам
01:41:30
мы должны увидеть, о, посмотри на этот взгляд
01:41:32
у нас есть первое, от чего мы можем избавиться
01:41:33
нам не нужны жестко запрограммированные
01:41:35
дерьмовые уже
01:41:37
теперь его действительно тянет сзади
01:41:39
закончить и загрузить его, так что если бы мне нужно было
01:41:41
обнови, чтобы доказать тебе, что это не так
01:41:42
фальшивый
01:41:44
сейчас
01:41:45
бум предложений рядом с вами, вкусно
01:41:47
скидки, вот и учебник
01:41:50
въехал, но тебе, наверное, интересно
01:41:51
ох, солнечно, но ты на самом деле не тянешь
01:41:52
в следующем я покажу
01:41:54
ты, как это сделать сейчас, так что внутри
01:41:55
избранные строки, окей, теперь мы можем перейти к
01:41:58
наши избранные строки, и мы собираемся сделать
01:42:00
то же самое, что и пользовательский эффект
01:42:02
собираюсь сделать вызов на серверной стороне
01:42:04
но он сделает специальный запрос
01:42:06
который только собирается получить
01:42:08
рестораны для идентификатора ресторана
01:42:11
у нас все в порядке, так что я собираюсь
01:42:12
покажу тебе, как это сделать, поэтому я собираюсь
01:42:13
использовать эффект
01:42:15
и этот будет такой вот
01:42:17
это будет
01:42:19
хорошо
01:42:20
и затем мы собираемся сделать следующее:
01:42:23
собираюсь пойти дальше и сказать здравомыслящий клиент
01:42:25
поэтому в этом случае сначала нам нужно
01:42:26
импортируйте наш эффект использования, который мы сделали
01:42:28
я скажу клиент
01:42:31
а затем переименуйте его в постоянного клиента
01:42:32
просто лениться стоять на клиенте, который мне нравится
01:42:34
показывать эти маленькие трюки
01:42:37
правильно выбрать точку и запрос, который в
01:42:40
вопрос здесь
01:42:41
это вообще-то здесь, так что я пойду
01:42:43
чтобы показать вам, как мы это делаем
01:42:45
хорошо, если мы пойдём и вспомним
01:42:46
то, что я сказал, всегда хочется проверить
01:42:48
это так, что я на самом деле собираюсь сделать
01:42:49
вот скопируйте этот идентификатор, потому что я собираюсь
01:42:51
нуждаться в этом
01:42:52
а потом я выложу это сюда
01:42:53
на секунду, а потом я просто
01:42:55
возьмите вопрос, который у меня есть для вас, ребята
01:42:58
да, не волнуйся, ты можешь исследовать грок
01:43:00
если ты действительно хочешь этому научиться, но
01:43:02
в основном то, что я сейчас делаю, это воображаю
01:43:04
я запрашивал идентификатор
01:43:06
вот так
01:43:08
окей, если бы я запрашивал идентификатор, который
01:43:10
выглядит примерно так
01:43:12
говоря искать только избранные публикации справа
01:43:15
где идентификатор равен этому, принеси мне
01:43:17
все то же самое, и принеси мне первым
01:43:20
результат, который возвращается в этот момент
01:43:22
видишь, оно нашло это и вернуло меня
01:43:25
тот, с идентификатором, теперь, очевидно, мы
01:43:27
не хочу делать жестко запрограммированное значение, поэтому
01:43:29
как нам хорошо сделать динамические значения
01:43:31
во-первых, запрос хорош, поэтому мы можем использовать
01:43:33
это хм, так что теперь я собираюсь сделать это
01:43:35
окей, я собираюсь пойти дальше и поп
01:43:36
это вот так
01:43:38
так бац
01:43:40
и тогда вы можете увидеть здесь, что у нас есть это
01:43:42
знак доллара ну хорошая вещь с
01:43:44
этот знак доллара означает, что мы действительно можем идти
01:43:46
вперед и после того, как мы выполним вызов выборки как
01:43:48
второй аргумент, который мы можем передать
01:43:50
параметры, как вы можете видеть здесь, так что это
01:43:52
объект, куда мы собираемся передать
01:43:54
id, и на самом деле мы здесь делаем
01:43:57
технически это так, так что
01:43:58
идентификатор соответствует этому идентификатору и
01:44:01
идентификатор, который мы собираемся использовать, находится здесь, но
01:44:03
из-за одного и того же имени мы действительно можем
01:44:04
избавьтесь от этого и сократите это так
01:44:06
идентификатор этого дела
01:44:08
теперь то, что мы делаем, ребята, мы
01:44:09
на самом деле идти вперед и переходить
01:44:12
Эм-м-м идентификатор в запрос, так что теперь как угодно
01:44:15
ряд, в котором я был, помню, что мы его проходим
01:44:17
пройдя на главном экране справа от идентификатора
01:44:19
это идентификатор категории, так что теперь все равно
01:44:21
на каком бы мы ни были, это всего лишь
01:44:23
собираюсь пойти и получить эту информацию
01:44:24
хорошо
01:44:25
тогда мы собираемся подготовить
01:44:27
часть государства
01:44:28
и мы назовем это
01:44:29
рестораны правильно, и это будет
01:44:31
быть нам нужно импортировать из вашего штата
01:44:34
вот так
01:44:35
хорошо, проверь это, так что бам
01:44:37
и затем мы собираемся сделать следующее:
01:44:39
собираюсь пойти дальше и установить
01:44:40
рестораны, когда мы получим ответ
01:44:42
назад, поэтому мы собираемся сказать, что данные
01:44:44
вернусь, и я хочу сделать это
01:44:46
я хочу настроить рестораны на
01:44:49
данные, которые вернулись, необязательно обучать их
01:44:51
может быть на неопределенном и ресторанах
01:44:54
позже точки в ресторанах, окей, вот так
01:44:56
точка
01:44:58
у нас есть наши рестораны под вопросом, так что
01:45:00
я собираюсь провести небольшой тест и
01:45:01
консоль выйдите из ресторанов и посмотрите
01:45:04
если все в порядке, то на данный момент
01:45:06
бац, у нас появилось четыре ресторана
01:45:09
жажду первого, да, Нандо
01:45:12
классная штука, вторая у нас есть, йо
01:45:14
суши, окей, теперь у нас есть данные для
01:45:17
поиграйте, так что теперь мы можем по существу
01:45:18
Сделайте это так, как было раньше, где я был
01:45:20
рендеринг этой статической информации
01:45:22
то, что я сейчас сделаю, это я собираюсь
01:45:24
давай, а вместо этого загляни ко мне, окей, так что
01:45:28
я покажу тебе, как мы это делаем сейчас
01:45:29
это будет
01:45:30
рестораны.карта для каждого
01:45:33
ресторан правильный ресторан
01:45:35
будьте осторожны, чтобы не импортировать это сделать
01:45:37
прямой возврат, и я собираюсь
01:45:39
по сути, вы уже догадались, что это
01:45:41
это будет ресторанная карта, хорошо, но
01:45:44
каждую из этих отдельных вещей помни
01:45:46
первое, что мы хотим сделать, это на самом деле
01:45:47
дайте ему ключ, ключ здесь будет
01:45:49
быть рестораном
01:45:51
точка на э-э, подчеркивание идентификатора, теперь все в порядке
01:45:54
из этих я собираюсь спасти тебя
01:45:56
немного поболит голова, я собираюсь
01:45:57
по сути, сократите его для вас, так что эти
01:45:59
те, которые вы хотите заменить на
01:46:01
Далее это будет ресторан
01:46:02
id изображение адрес название блюда рейтинг
01:46:04
краткое описание, тип названия и т. д.
01:46:06
окей, нажмите «Сохранить сейчас»
01:46:08
теперь мы можем видеть
01:46:11
это на действительный URL, это нормально, игнорируйте
01:46:13
что сейчас я покажу тебе, как мы можем
01:46:14
исправьте, что это из-за URL-адреса изображения
01:46:17
поэтому я покажу тебе, как мы можем обойти
01:46:18
это сейчас, поэтому я собираюсь избавиться от этого
01:46:21
все эти статические вещи, и вот это
01:46:23
втягиваем единственное, что нам нужно исправить
01:46:25
вот если мы зайдем в нашу ресторанную карту
01:46:28
именно там, где у нас есть изображение, правильно
01:46:30
помните, что мы извлекаем разумный URL-адрес
01:46:34
это не просто волшебным образом дает нам
01:46:36
тихий URL, который мы можем использовать правильно
01:46:38
помните ту вспомогательную функцию, которую мы
01:46:40
созданный ранее из Сани
01:46:42
так что вот здесь мы на самом деле
01:46:44
собираемся использовать это, чтобы экспортировать правильно
01:46:45
так что я собираюсь вернуться в свой ресторан
01:46:46
открытка, и я назову URL-адрес
01:46:49
это импортирует это из здравомыслия, которое я передаю
01:46:51
URL Сани, окей, это изображение
01:46:54
источник, а затем мы говорим точку
01:46:57
url, и это даст нам строковое значение
01:46:59
мы переходим к нашему изображению и
01:47:01
Просто так
01:47:02
бац, у нас есть
01:47:04
наши изображения протягиваются
01:47:06
потрясающие вещи, очень чисто, очень приятно
01:47:10
нажмите кнопку "палец вверх", если это было
01:47:11
типа круто, вот это
01:47:14
буквально сейчас питается из нашего
01:47:17
здравый смысл, правильно, так что это
01:47:19
избранные категории меню, которые вы видите
01:47:20
вот как вы видите
01:47:22
информация на лицевой стороне, хорошо, почему
01:47:25
не поддерживать ваш местный ресторан
01:47:26
сегодня вечером, и я скажу просто, чтобы
01:47:28
докажи тебе, что это правда, я ухожу
01:47:30
сказать
01:47:31
Хэштег попфам Хэштег поп фам
01:47:34
опубликовать изменения и вот так
01:47:37
через короткую секунду или две мы должны быть
01:47:39
способен увидеть эти различия в
01:47:41
второй справа, так что я пойду вперед
01:47:43
подожди секунду, мы должны посмотреть
01:47:45
иногда требуется секунда, чтобы распространиться
01:47:48
и вот, почему бы нам не посмотреть
01:47:50
ресторан сегодня вечером хэштег фам бум
01:47:52
да, классная штука, так что вы увидите, как
01:47:54
невероятное звучание, это действительно правильно
01:47:56
это работает очень хорошо, позволяет вам иметь
01:47:58
действительно простая настраиваемая платформа, ага
01:48:00
и ваши не-разработчики могут прийти и
01:48:03
измените это, чтобы оно выглядело правильно
01:48:04
следующий шаг — получить категории
01:48:07
тоже в порядке, так что пойдем дальше
01:48:09
и сделай это красиво и чисто, хорошо, так что
01:48:11
это переходит в категории
01:48:13
это очень простой оператор выборки, поэтому
01:48:15
первое, что мы делаем, это готовим какое-то состояние
01:48:18
так что у нас будет пустой кусок
01:48:19
штат, влей это, и тогда у нас будет
01:48:21
эффект использования, эффект использования будет
01:48:22
нагрузка на монтирование компонента, который мы
01:48:24
собираюсь пойти дальше и сказать, что это будет
01:48:26
сначала сделайте это один раз, когда мы загружаемся, затем
01:48:28
вообще-то я, да, кстати, ребята, просто
01:48:30
было использовано краткое резюме в этом идентификаторе
01:48:33
это означает, что нам действительно следует
01:48:35
здесь также необходимо передать идентификатор
01:48:37
потому что это часть массива зависимостей
01:48:39
просто предупреждаю
01:48:40
окей, на данный момент я просто хочу
01:48:43
иди и сделай следующее
01:48:45
так
01:48:46
я хочу пойти дальше и сказать: «используй эффект»
01:48:48
эээ, клиент, давай включим это, я пойду
01:48:50
переименовать моего клиента в здравомыслящего клиента
01:48:53
ой, убедитесь, что вы правильно написали этот знак
01:48:55
точка эклайна, мы собираемся сказать
01:48:58
принести
01:48:59
в этом случае обратные галочки запоминают и
01:49:01
запрос здесь на самом деле очень простой, я
01:49:03
просто собираюсь пойти дальше и запросить все
01:49:04
типы, где категория является типом
01:49:07
категория правильная, поэтому, если я войду в свое видение
01:49:09
вот я иду и проверю это
01:49:11
теперь ты видишь, что я понимаю все по-другому
01:49:13
те, кто вернулся за лайками, предлагают пиццу и все такое
01:49:16
добрый и помни, что теперь есть изображение
01:49:18
обратите внимание, что это именно тот образ, которым я был
01:49:19
говорим о том, чтобы увидеть, что это не
01:49:21
URL изображения, поэтому нам нужно проявить здравомыслие
01:49:23
помощник для преобразования этого в URL-адрес изображения
01:49:25
хорошо
01:49:26
поэтому мы заберем его, когда он вернется, мы
01:49:28
собираюсь получить данные, мы продолжим
01:49:30
и распределите данные по заданным категориям
01:49:33
вот так
01:49:34
окей, теперь вместо того, чтобы рендерить это
01:49:36
бесконечные карты здесь, что я собираюсь
01:49:38
делай, я скажу категории
01:49:41
точечная карта, мы собираемся идти вперед и
01:49:43
отобразить следующее как право ответа
01:49:45
мы собираемся пройти мимо
01:49:46
карточку категории и помните, что ключ
01:49:49
всегда важная вещь, которую мы должны сделать
01:49:52
мы собираемся сказать категория.подчеркивание
01:49:54
id, чтобы дать ему идентификатор, который мы можем использовать для
01:49:56
URL изображения, которое мы собираемся продолжить
01:49:58
и скажи
01:49:59
url4 воспользуйтесь нашим помощником по здравомыслию, мы
01:50:02
собираюсь сказать
01:50:04
Category.image.url окей и что мы можем
01:50:06
ребята, мы действительно можем установить
01:50:08
ширину, так что вы действительно можете сделать
01:50:09
некоторые небольшие вложения, чтобы вы могли
01:50:10
на самом деле делаю промежуточные преобразования
01:50:13
изображений, поэтому мы продолжим
01:50:14
и просто скажите, что изображение имеет ширину
01:50:15
200. хорошо, я просто покажу тебе
01:50:17
пример того, как это можно сделать правильно и
01:50:19
тогда мы собираемся пойти дальше и сказать
01:50:20
категория
01:50:22
имя точки и так далее
01:50:24
на самом деле это означает, что дело не пойдет вперед
01:50:25
и получить изображение большего размера или что-то в этом роде
01:50:27
хорошо, я просто доберусь туда, это будет
01:50:28
сократите его на стороне запроса здравомыслия
01:50:31
и тогда это даст нам правильное значение
01:50:32
так что я собираюсь пойти дальше и избавиться от
01:50:33
это сейчас, и мы должны увидеть наши
01:50:35
категории появляются в Баме просто так, мы
01:50:38
пойми это правильно, если бы я хотел избавиться от этого
01:50:40
на самом деле он пошел бы вперед и принес бы это
01:50:41
но это может стать неоправданно большим
01:50:43
изображения именно тогда, когда вы могли бы просто сделать это
01:50:45
вместо этого все в порядке, это выглядит действительно
01:50:47
хорошо прямо сейчас, у нас есть нандос
01:50:49
все эти хорошие вещи теперь, что я
01:50:51
хочу сделать, это следующий шаг, так что
01:50:53
мы успешно создали наш дом
01:50:55
экран, который мы успешно создали, эээ
01:50:58
подключение к подписанию ecm в качестве бэкэнда
01:51:00
и каким будет следующий естественный шаг
01:51:02
давай, и сделай так, когда мы пойдем
01:51:04
вперед и нажмите на одну из них, это на самом деле
01:51:07
переносит нас на экран, где мы можем видеть
01:51:10
наш, э-э, наш ресторан, окей
01:51:13
и как нам сделать это правильно, это
01:51:15
на самом деле проще, чем вы думаете
01:51:17
перейдем к app.js и собираемся
01:51:19
добавь второй экран, хорошо, так что сначала
01:51:21
то, что мы собираемся сделать, это просто
01:51:23
чтобы было предельно ясно, что мы сейчас
01:51:25
построю экран для ресторана, окей
01:51:28
это будет ресторан экран, поэтому, когда я нажимаю на нандо, это
01:51:30
покажу мне это, хорошо, надеюсь
01:51:31
это ясно дает понять, что мы собираемся
01:51:32
создайте новый экран стека, и я здесь
01:51:34
я назову это рестораном
01:51:36
ключ важен, важно то, как вы ориентируетесь
01:51:38
между экранами, а затем этот
01:51:40
будет называться ресторанным экраном
01:51:42
окей, вот это я собираюсь скопировать и
01:51:44
готовьтесь, ребята, редукс уже скоро
01:51:47
скоро тоже, да, мы собираемся пойти в
01:51:48
наши экраны сзади, и я
01:51:51
собираюсь создать ресторан screen.js
01:51:53
хорошо
01:51:54
dojs теперь реагирует на собственный функциональный экспорт
01:51:56
компонент, поехали, реагируем, ресторан
01:51:58
экран и что мы хотим здесь сделать, ребята
01:52:01
является
01:52:02
мы собираемся пойти дальше и начать
01:52:04
строим да, этот экран, окей, так что
01:52:07
обо всем по порядку, как мне это удалось
01:52:09
когда я нажимаю на одно из них, оно уносит меня
01:52:12
к
01:52:14
экран ресторана, ну, на самом деле это так
01:52:16
довольно просто, правильно, то, что я делаю, это
01:52:17
первое, что мне нужно исправить, хм
01:52:19
типа так важно, вот и все, ошибок нет
01:52:22
это хорошо, и теперь, когда я захожу в свой
01:52:24
избранные строки я иду в свой ресторан
01:52:26
карта
01:52:27
эта осязаемая непрозрачность, так что это правильно
01:52:29
здесь, когда я нажимаю на нее, я хочу перейти
01:52:32
в подходящее место, окей, и в этом
01:52:35
дело, что я могу сделать
01:52:37
если я перейду к своей ресторанной карте, так что
01:52:40
ресторанная карта, теперь я хочу сделать это
01:52:42
я хочу сказать, хм, где это
01:52:44
ушел, э-э
01:52:46
осязаемая непрозрачность, вот и все
01:52:48
я скажу следующее, я собираюсь
01:52:49
сказать в прессе
01:52:51
тебе следует сделать что-то правильно, поэтому в этом
01:52:53
случай, я собираюсь написать немного кода
01:52:54
исполнение здесь и что мы можем на самом деле
01:52:56
ребята, мы можем пойти дальше и сказать
01:52:59
мне нужно что-то под названием навигация
01:53:01
объект правильный, поэтому мы используем его
01:53:03
используйте навигационный крючок и из реакции
01:53:05
встроенная навигация, и это позволяет мне
01:53:07
в основном перемещаюсь между страницами, окей, так что
01:53:11
в этом случае мы скажем
01:53:12
навигация по точкам
01:53:14
с одной страницы на страницу ресторана
01:53:17
окей, теперь обратите внимание, какой здесь ключ
01:53:20
в основном ключ, связанный с
01:53:22
экран стека, окей, а потом что мы делаем
01:53:24
собираюсь сделать вот это, мы действительно должны пройти
01:53:25
некоторые параметры наряду с этим
01:53:28
на самом деле это будет изменение маршрута
01:53:29
реквизит, который мы передали сюда, так что
01:53:32
подумай об этом так, я нажимаю на это
01:53:34
ох, во-первых, это захватило меня на потрясающие вещи
01:53:37
и у вас есть правильный заголовок по умолчанию и
01:53:38
обратите внимание, что у вас также есть свайп назад
01:53:40
функциональность правильная, так что это будет
01:53:41
на самом деле работает, это просто не работает для
01:53:43
я сейчас не могу нажать на кнопку
01:53:44
край, но в принципе вы можете на самом деле
01:53:45
проведите пальцем назад между этим, но когда
01:53:47
я перемещаюсь, я передаю эту информацию
01:53:50
вместе с навигацией, вот так
01:53:52
это то, что я хочу сделать здесь и потом
01:53:54
я собираюсь сделать кое-что умное с
01:53:55
сокращение верно, но в основном, когда я
01:53:57
перейдите сюда, я, по сути, собираюсь
01:53:59
следующий экран, и теперь мы можем начать
01:54:00
строю следующий экран, так что я
01:54:03
собираюсь вернуться в ресторан
01:54:04
экран и вот с чего мы начинаем
01:54:06
получать вещи довольно интересные, верно
01:54:09
и что касается экрана ресторана прямо сейчас
01:54:11
я собираюсь пойти дальше и вытащить их
01:54:13
аргументы, которые я в основном передал
01:54:15
как мне это сделать, я использую что-то под названием
01:54:17
корень, окей, так что, по сути, я собираюсь
01:54:19
скажем, используйте root-права из реакции навигации
01:54:23
так вот это на самом деле внутри этого
01:54:25
что я могу сделать, так это сделать что-нибудь умное
01:54:26
деструктуризация здесь, внутри root you
01:54:28
на самом деле имеют параметры корневой точки, а затем
01:54:30
вам нужен точечный идентификатор
01:54:32
URL-адрес изображения с точкой, все это хорошо
01:54:35
вот что я могу сделать, так это то, что я могу
01:54:37
деструктурируйте это, я могу получить параметры
01:54:39
и я могу разрушить это, и я могу
01:54:42
теперь вытащи все параметры, которые я
01:54:45
прошло, так что здесь будут все
01:54:47
информация, что я в основном пришел
01:54:48
на экране, так что если я захочу
01:54:49
проверь это, просто чтобы доказать, что я не
01:54:51
вру, я могу ввести заголовок, и ты сможешь
01:54:53
посмотрим, зайду ли я сюда, нандос
01:54:55
если я зайду сюда, KFC, если я зайду сюда
01:54:58
вагга мама, у нас все в порядке
01:55:01
в данном случае текст
01:55:03
название, окей, классная штука, чтобы вы видели
01:55:04
мы прошли через реквизит, да
01:55:07
Следующее, что я хочу сделать, это я хочу
01:55:08
в общем, спрячь заголовок, окей, я хочу
01:55:10
мне не очень нравится этот заголовок, так что
01:55:12
я собираюсь пойти дальше и получить объект навигации, и я собираюсь сделать
01:55:14
трюк, который мы проделали ранее, который заключался в
01:55:16
использовать эффект макета
01:55:18
и помните, что мы можем сделать, это когда
01:55:20
когда компонент в основном рисует
01:55:22
экран, то я хочу практически скрыть
01:55:24
навигация правильная, так что в этом случае
01:55:26
очень простой трюк, который мы сделали с помощью
01:55:27
главном экране мы устанавливаем заголовок, отображаемый на
01:55:30
ложь, окей
01:55:31
и что потом мы собираемся делать
01:55:33
сейчас внутри этого экрана, это
01:55:37
на самом деле все это будет
01:55:38
просмотр прокрутки, окей, так что все в порядке
01:55:41
будет просмотр с прокруткой, вот так, окей
01:55:43
так что на самом деле это будет
01:55:44
просмотр с возможностью прокрутки, поэтому обратите внимание, как мы получили
01:55:46
этот милый маленький красивый вид прокрутки
01:55:47
аспект здесь, окей
01:55:50
хм, так что на данный момент и есть причина
01:55:52
почему я хочу это сделать, потому что я хочу
01:55:53
пусть там что-то типа такого появится
01:55:55
выглядит довольно мило, если ты спросишь меня
01:55:57
когда он это сделает, хорошо, так что в этот момент
01:55:59
сейчас
01:56:00
то, что я хочу сделать, это то, что я собираюсь сделать
01:56:02
эм, давай просто получим первый бит
01:56:04
реализовано так, что вы можете начать
01:56:05
увидеть кое-что, так что я возьму
01:56:07
посмотрите здесь, так что посмотрите внутри этого вида
01:56:09
у меня будет изображение
01:56:11
так образ
01:56:12
вот такое самозакрывающееся изображение и это мы
01:56:15
нужно импортировать из React Native
01:56:17
источником этого изображения будет
01:56:20
Ури, и если кто-нибудь догадается, я пойду
01:56:22
сделать ури, а потом у нас будет
01:56:24
удобная маленькая вспомогательная функция, которая
01:56:26
собираюсь в основном передать это из
01:56:28
URL-адрес изображения импортировать функцию помощи
01:56:30
из нашего файла, поэтому в данном случае теперь мы
01:56:33
должен увидеть, как только я добавлю высоту и
01:56:36
ширина что-то в заголовке, хорошо, так что
01:56:38
этот случай с четырьмя
01:56:39
я скажу рост 56 и я
01:56:42
скажу, что фон должен быть серым
01:56:45
упс, о боже мой, рост 56.
01:56:48
фон должен быть серым от 300 и
01:56:51
заполнение четырех и вот так, ох
01:56:54
это выглядит красиво, так что это
01:56:56
пока выглядит довольно хорошо
01:56:58
хм
01:56:59
окей, это фотография Нандо и
01:57:01
Следующее, что мне нужно, это что-то вроде спины
01:57:02
кнопка вправо, потому что я создаю свой собственный
01:57:04
здесь пользовательский заголовок, поэтому мне нужна основа
01:57:06
поэтому первое, что я собираюсь сделать, это сделать это
01:57:07
родственник, потому что у меня будет
01:57:09
кнопка абсолютного положения здесь, так что
01:57:10
родственник внутри, тогда у меня будет
01:57:13
сенсорная кнопка непрозрачности, окей, так что
01:57:15
кнопка, которую я создам, вот эта
01:57:16
прямо здесь это будет абсолютно
01:57:18
позиционируется относительно родителя, поэтому в
01:57:20
этот чехол осязаемый непрозрачный осязаемый
01:57:22
непрозрачность, ну, импортируйте вот так, а потом
01:57:26
здесь у меня будет значок со стрелкой влево
01:57:29
Значок стрелки влево. Давайте использовать сплошной цвет.
01:57:31
вариант, и здесь я скажу
01:57:34
высота этого будет 20
01:57:37
поэтому высота будет равна 20, ширина — 20.
01:57:39
так что я думаю, я просто скажу, что размер будет 20
01:57:41
честно говоря, размер 20. и давай просто сделаем
01:57:44
цвет будет таким
01:57:46
цвет доставки, это хэш
01:57:48
доставка и, очевидно, вы можете провести рефакторинг
01:57:50
так что у меня это как константа и все это
01:57:51
вроде хорошие вещи, но я просто держу
01:57:52
сегодня просто, бум
01:57:55
окей, оно у нас есть, это почти
01:57:57
то, что я хочу, но этого нет, и все же я
01:57:59
хочу, чтобы это было абсолютно позиционировано
01:58:02
окей, я скажу абсолютную позицию
01:58:05
топ 14
01:58:06
левый
01:58:08
оставил э-э-э пять и автоматически пошел вверх
01:58:11
ладно, хорошо
01:58:12
хм, но я хочу сделать это немного проще
01:58:14
см. панорамирование к серому фону из 100
01:58:18
и округленная четверка, и это должно дать
01:58:21
это кнопка, пока окей, круто, так что теперь
01:58:23
у нас есть кнопка, на которую можно нажать, когда я
01:58:25
нажмите на него, я хочу вернуться назад, и как
01:58:27
черт возьми, мы делаем это хорошо, мы идем вперед
01:58:29
и мы говорим в прессе
01:58:31
сделайте следующее правильно, чтобы я мог
01:58:33
вообще-то, скажи и потому что
01:58:34
это просто будет
01:58:35
однострочный, мы можем сказать, навигация, точка, иди
01:58:38
back - это функция, которая получает
01:58:40
вызывается, когда мы нажимаем его, и теперь
01:58:42
бам
01:58:43
посмотри на эти суши, KFC
01:58:46
эх, вагга мама, эй, посмотри на это
01:58:49
чистый
01:58:51
да, если тебе это нравится прямо сейчас
01:58:53
ох чувак, это круто, немного крутой звук
01:58:55
чувак, я знаю, мне это нужно, мне нужно это
01:58:57
маленький рог, хм
01:59:00
классная штука, окей, вот это у нас есть
01:59:01
сейчас работает очень хорошо, так что вы можете видеть
01:59:03
двигаюсь в очень хорошем темпе, окей, после
01:59:05
этот вид теперь мы собираемся идти вперед
01:59:07
и добавьте еще одно представление, и это
01:59:09
где мы собираемся начать строить
01:59:10
этот интерфейс прямо здесь, окей, поехали
01:59:12
двигаться относительно довольно быстро, верно
01:59:14
прямо сейчас, так что это будет очень здорово
01:59:16
скорость в порядке, так что у нас будет для этого
01:59:18
вид, я скажу, что это будет
01:59:20
имя класса bg white, окей, внутри здесь
01:59:24
у нас будет другой взгляд, и мы
01:59:26
у меня будет первый фрагмент текста и
01:59:27
это будет
01:59:29
эм, заголовок, давай нажмем «Сохранить», поехали
01:59:32
окей, сейчас зашел Нандо, я
01:59:35
собираюсь постепенно начать это по ходу дела
01:59:37
так что мы не зайдём слишком далеко
01:59:39
забегаем вперед, поэтому мы собираемся сказать
01:59:40
дополнение x из четырех, я верю, что да, я
01:59:43
добавление t на верхнюю ось четырех бам
01:59:46
оттолкни его от него немного
01:59:48
текст начинает оживать, как только вы
01:59:49
начни добавлять это, и я скажу
01:59:51
текст три XL, я хочу быть довольно большим
01:59:53
и я хочу, чтобы шрифт был жирным, бум, просто
01:59:55
как это
01:59:56
внизу я собираюсь посмотреть
01:59:58
внутри этого представления я собираюсь сказать
02:00:00
все внутри здесь, поэтому имя класса
02:00:03
должен быть гибкий ряд, ох уж эта энергия
02:00:04
вставать под эту музыку, хорошо, так что
02:00:06
гибкое пространство строк x из 2
02:00:09
пробел x из 2, а затем я скажу
02:00:11
маржа y из 1 вот так прямо сейчас
02:00:15
все внутри здесь будет разнесено
02:00:16
немного по-другому должно выглядеть
02:00:18
довольно хорошо, хорошо, а потом я собираюсь
02:00:20
есть несколько просмотров внутри него, потому что
02:00:22
у нас есть что-то вроде этого
02:00:24
необычная установка, так что первое, что мне нужно
02:00:26
сделать, это посмотреть
02:00:28
и на этом виде будет звездочка
02:00:30
значок, поэтому я собираюсь просто импортировать все
02:00:32
значки вместе, и это делает нашу жизнь
02:00:34
немного проще
02:00:35
хм, так что я собираюсь импортировать их все
02:00:37
вместе вот так
02:00:42
хорошо, импортируем все это в
02:00:43
в то же время
02:00:45
Итак, у нас есть значок звездочки
02:00:48
теперь значок звездочки будет иметь
02:00:50
после этого он будет иметь цвет
02:00:51
зеленый
02:00:54
и тогда это будет иметь
02:00:56
непрозрачность будет 0,5
02:01:00
тот
02:01:01
размер будет 22
02:01:03
хорошо, бум
02:01:05
и наша левая иконка уже была
02:01:06
заявил, где я сделал эту стрелку
02:01:08
оставил нашего парня, ой, нам это не нужно
02:01:11
там
02:01:12
окей, поехали, у нас есть хороший
02:01:13
маленькая звездочка зеленая звезда
02:01:15
а рядом с ним будет
02:01:17
кусок текста и по сути сохранить
02:01:18
у нас есть немного времени, я просто ухожу
02:01:20
чтобы вставить это прямо сейчас, мы сделали это
02:01:22
ранее с тем же мнением, что это будет
02:01:23
быть текстом, похожим на то, как мы
02:01:26
охватывать что-то кроме рейтинга, так что
02:01:28
ой, возвращение сюда дает нам
02:01:30
предложения
02:01:32
и чтобы это выглядело так, как мы хотим
02:01:33
будет сказано: гибкий рулон
02:01:36
центр предметов
02:01:40
Пространство в центре элемента по оси X одного
02:01:43
да, поэтому мы собираемся скопировать и вставить
02:01:44
это еще раз, и вы можете видеть, что у нас есть
02:01:46
следующий рядом, хорошо, но я пойду
02:01:47
изменить следующее на местоположение
02:01:48
Значок маркера, его цвет
02:01:51
будет серым
02:01:53
эээ, непрозрачность немного другая, 0,4 выглядит
02:01:55
немного другой размер 22 говорит то же самое и
02:01:57
тогда у нас будет адрес поблизости
02:01:59
вместо этого сейчас так вместо всего
02:02:01
это у нас будет поблизости
02:02:02
адрес теперь вы видите, написано рядом
02:02:04
клинк стрит, классная штука, вот так
02:02:06
пока выглядит очень хорошо
02:02:08
правильно, чистый интерфейс, спасибо за интерфейс в этом
02:02:11
сборка прекрасна, я все знаю, так что
02:02:13
у нас есть вид за пределы всего
02:02:15
этот
02:02:16
сейчас
02:02:17
просто небольшой чек для меня от моего
02:02:19
сторона, где у нас есть разница один из одного
02:02:23
за пределами этого представления у меня будет
02:02:26
фрагмент текста, и это будет иметь
02:02:28
короткое описание, такое короткое описание
02:02:30
теперь этот фрагмент текста будет иметь
02:02:32
имя класса, которое будет иметь
02:02:33
текст серый 500 поля сверху двух отступов
02:02:37
внизу четыре бам, и тогда ты сможешь
02:02:40
начинаешь понимать, что это честно
02:02:42
небольшие различия в пользовательском интерфейсе, которые начинают сказываться
02:02:44
все оживает, ты действительно можешь
02:02:46
начать видеть, как приложение начинает формироваться, когда
02:02:48
вы начинаете добавлять эти крошечные
02:02:50
различия прямо как посмотрите на это, это
02:02:52
просто так красиво, это просто безумие
02:02:55
когда я это делал, я подумал: ох чувак
02:02:56
хорошо, итак
02:02:58
внизу здесь у нас будет
02:03:00
кнопка, так что это будет что-то вроде
02:03:01
кликабельна кнопка «есть пищевая аллергия»
02:03:03
окей, такая осязаемая непрозрачность
02:03:06
вот мы и зайдём внутрь, мы собираемся
02:03:08
есть значок круга с вопросительным знаком, поэтому
02:03:10
вопросительный знак круг значок это собирается
02:03:12
есть серый цвет, значит, он будет цветным
02:03:14
серый, ну, вообще-то, я просто спасу
02:03:16
мы немного времени там и
02:03:18
просто вставь это, потому что ты меня видел
02:03:20
сделай это пару раз, так что бум
02:03:22
мы идем
02:03:23
и после этого мы немного пообщаемся
02:03:25
текст и значок шеврона справа рядом с
02:03:28
друг друга, так что это все рядом
02:03:29
у друг друга шеврон с пищевой аллергией
02:03:31
белый цвет будет зеленым, который
02:03:33
мы привыкли к стилю, здесь больше
02:03:35
важно, когда дело доходит до съемных
02:03:36
непрозрачность, поэтому флекс-ролл сразу помещает его
02:03:38
в строку, окей, гибкая означает, что
02:03:41
среднего хватит
02:03:42
пространство, поскольку они занимают столько же места, сколько
02:03:44
вы хотите, чтобы предметы были централизованы
02:03:46
выровнен
02:03:47
тогда мы скажем пробел х из двух, так что
02:03:49
пробел х из двух
02:03:51
а затем мы скажем, что панорамирование должно
02:03:53
быть четырьмя границами по букве y
02:03:55
Итак, вы видите, что теперь у нас есть хороший
02:03:56
толстая граница или должен быть серый цвет
02:03:58
стоимость 300, окей, стоимость 300, бам
02:04:02
хороший
02:04:03
хм, вот и посмотри, как это выглядит
02:04:05
красиво и тоже кликабельно все
02:04:08
правильно, так что у тебя, очевидно, может быть секундочка
02:04:09
экран после этого, то есть, если у вас есть
02:04:10
пищевая аллергия справиться с таким потоком
02:04:12
ничего, если бы ты действительно хотел этого
02:04:14
теперь под нашей сенсорной непрозрачностью мы
02:04:17
посмотрю еще раз, окей, теперь это
02:04:20
там у нас будет больше
02:04:21
что-то вроде умной вещи
02:04:22
происходит, поэтому в этом случае сначала мы
02:04:24
у меня будет текст, в котором будет сказано
02:04:25
меню, ой, окей, меню и этот текст
02:04:30
само по себе собирается пойти дальше и иметь
02:04:32
заполнение имени класса x из четырех
02:04:35
маржа теперь извините, дополняю верхнюю часть шести
02:04:37
справа вверху шести полей внизу
02:04:39
три
02:04:40
и шрифт должен быть жирным
02:04:43
смелый
02:04:44
и я скажу, что текст должен быть дополнительным
02:04:46
большой бам, сейв, ты можешь увидеть, где
02:04:48
мы займемся этим сейчас, хорошо, так что
02:04:50
вещи, которые вы здесь видите, происходят
02:04:52
быть чем-то под названием «блюдо-ролл», окей, так
02:04:55
во-первых, нам нужно будет выполнить рендеринг
02:04:56
посуду, а потом мы поедим
02:04:58
куча разных роллов, так что это
02:05:00
собираюсь привлечь меня к составлению карт
02:05:01
что-то в порядке
02:05:03
и что мы собираемся сделать сейчас, это то, что я
02:05:05
собираюсь пойти дальше и сделать
02:05:07
на самом деле у нас есть все блюда из
02:05:09
предыдущее, что мы извлекли, верно
02:05:11
так что теперь мы можем на самом деле сделать то, что можем
02:05:12
Скажем, точечная карта блюд, поэтому точечная карта блюд jsx
02:05:16
для каждого блюда, которое я хочу приготовить
02:05:19
неявный возврат
02:05:20
правильно, так что неявный возвратный бум и некоторые
02:05:23
jsx будет отображаться на экране
02:05:24
теперь у меня будет дистрибутив
02:05:26
компонент, который мы еще не создали
02:05:28
и
02:05:30
реквизит будет таким, как показано ниже, так что
02:05:32
я собираюсь передать идентификатор блюда
02:05:34
имя описание цена и изображение ок
02:05:37
давайте создадим этот компонент дистрибутива правильно
02:05:40
я имею в виду избавиться от этого, так что давай создадим
02:05:41
компонентный дистрибутив dot js
02:05:44
наш эксплойт нативной функции реагирования
02:05:45
компонент и тому подобные вещи
02:05:48
которые мы прошли, на самом деле собираются
02:05:50
быть передано здесь, чтобы дистрибутив был
02:05:53
на самом деле собираюсь получить тот реквизит, который я
02:05:54
только что зашел сюда, окей
02:05:57
так что давайте продолжим и вставим это сейчас
02:05:59
поэтому мы импортировали наш компонент вверху
02:06:01
вот и нажимаем «Сохранить», и теперь нам следует
02:06:04
посмотри, зайду ли я сюда, не обращай внимания
02:06:06
нарушить, поэтому мы собираемся преобразовать это
02:06:07
чтобы в конечном итоге выглядеть примерно так
02:06:09
окей, мы движемся в очень хорошем темпе
02:06:11
прямо сейчас, нам просто нужно идти вперед
02:06:13
и пусть этот дисро выглядит красиво, верно?
02:06:15
Итак, первое, что я хочу сделать
02:06:17
начни с этого ящика, окей
02:06:19
так
02:06:20
Давайте
02:06:22
тот
02:06:23
первым делом будет
02:06:25
эм, прикрепляемая кнопка непрозрачности, окей, так
02:06:28
это будет вся строка
02:06:29
прикрепляемая кнопка, прикрепляемая, извините
02:06:31
непрозрачность, моя вина
02:06:33
и это давайте просто продолжим и исправим
02:06:35
это придает непрозрачность, а затем мы
02:06:37
я собираюсь увидеть его изнутри, так что
02:06:38
прямо сейчас мы буквально строим это
02:06:40
часть вот здесь, а не кнопки
02:06:42
потом я покажу тебе, как мы это делаем
02:06:44
так вот, ребята, мы внутри этого вида
02:06:46
у меня будет три фрагмента текста, хм
02:06:49
первым будет
02:06:51
заголовок, имя и описание, которые мы
02:06:54
собираюсь вставить их вот так, с таким названием и
02:06:56
описание придет следующее.
02:06:58
на самом деле валюта сейчас, потому что мы
02:07:00
используя валюту, я действительно собираюсь
02:07:01
установить что-то, называемое реакцией
02:07:03
форматтер валюты, который на самом деле
02:07:05
собираюсь помочь мне
02:07:06
типа, ты знаешь, включи или помоги мне
02:07:08
правильно отформатируйте эту валюту, поэтому я
02:07:10
собираюсь подняться на верхний уровень, так что я не буду
02:07:12
установлю его в здравомыслие, я собираюсь
02:07:13
установите его в правильный клон mpmi
02:07:16
установите формат валюты реагирования, чтобы мы
02:07:19
на самом деле здесь есть странная вещь, что
02:07:20
это, э-э, невозможно зарезервировать зависимость
02:07:22
дерево
02:07:23
не могу решить проблему популярности
02:07:25
интересно, окей, я не думаю, что у меня есть
02:07:27
установил правильную вещь, так что пусть
02:07:29
мне вообще-то пойти
02:07:31
ох, гугл быстро отреагировал, валюта
02:07:32
форматтер
02:07:34
пойдем дальше и посмотрим
02:07:41
окей, я сделал это раньше, а это
02:07:44
хорошо, это редкая валюта npm
02:07:47
формула окей, интересно, я вообще-то сделал
02:07:49
это с пряжей, я не уверен, что это
02:07:52
собираюсь сломать что-нибудь здесь, хм
02:07:55
но в любом случае, дай мне посмотреть
02:07:58
какой из них я использую, так что реагируйте на формат валюты
02:08:00
я использовал версию 1.1.0
02:08:04
так
02:08:05
вот если я зайду в свой package.json
02:08:08
и я добавляю вручную сам
02:08:12
давайте продолжим, ребята, этого не должно быть
02:08:14
на самом деле сделал тебя таким, как я
02:08:16
не должен сломать твой, я хочу
02:08:18
взаимно, о нет, извините, ребята, нет, это правда
02:08:21
интересно, окей
02:08:23
окей, хм
02:08:24
в таком случае то, что ты можешь сделать, это нормально, я
02:08:27
изначально использовала пряжу
02:08:29
начинаю, и что я собираюсь сделать, так это то, что я
02:08:30
сейчас включу тебя, так что я
02:08:32
покажу тебе, как ты это делаешь, это очень легко
02:08:33
ты можешь просто удалить блокировку пакета
02:08:35
хм, в этом случае не делай этого
02:08:37
производство не делайте этого в производстве
02:08:38
да, я просто показываю тебе свой путь
02:08:40
делая это, ты реклама, э-э, реагируй на валюту
02:08:42
форматтер
02:08:44
и я продолжу вязать пряжу, потому что
02:08:46
я сейчас работаю над сборкой, я не
02:08:48
хочу все испортить, так что
02:08:50
это изменит ситуацию, так что безумие все еще остается
02:08:52
используя гм, я не знаю, что он использует пряжу как
02:08:54
ну ладно, наверное, поэтому это странно
02:08:56
все в порядке, но теперь ты видишь фиксатор пряжи
02:08:58
вместо этого файл будет построен, братан, и
02:09:00
все должно быть хорошо, окей
02:09:03
хорошо
02:09:04
так что, как только это будет сделано, давай сделаем это
02:09:06
все в порядке, так что теперь мы здесь
02:09:09
в конечном итоге я буду использовать эту валюту
02:09:11
формат в порядке, поэтому формат валюты
02:09:13
под вопросом, вот этот, реагирует
02:09:16
форматировщик валют и то, как мы его используем
02:09:19
это довольно просто, мы в основном идем вперед
02:09:21
и скажи
02:09:22
мы помещаем внутрь текстового поля, а затем мы
02:09:24
скажем, цена количества валюты - это то, что мы
02:09:27
передайте и валюту, которую вы только что
02:09:28
укажите от доллара США фунта стерлингов и все такое
02:09:31
из вещей правильно
02:09:32
иногда твоя выставка перестанет смотреть
02:09:35
что это случилось со мной только сейчас, вот так
02:09:37
в этом случае, если все закончится, не волнуйся
02:09:39
все в порядке, бывает то, что я
02:09:42
рекомендую тебе просто прийти сюда, просто ударь, эээ
02:09:44
я или ты просто перезапустим свой упаковщик
02:09:46
это совершенно нормально, это происходит в
02:09:48
на самом деле подождите, пока это установится, потому что
02:09:50
возможно, именно поэтому это так
02:09:52
испугался, окей, и что я буду делать
02:09:54
прямо сейчас продолжаю программировать, а потом
02:09:55
когда мы доберемся до того момента, когда это
02:09:57
своего рода завершает эту зависимость
02:09:58
установку мы можем продолжить, так что это
02:10:00
прямо сейчас валюта, которая появится
02:10:01
на экране все, что мне нужно сделать, это
02:10:03
поместите изображение рядом с ним, хорошо, так что вот
02:10:05
я просто собираюсь написать код вслепую, я собираюсь
02:10:07
сказать: «смотри внутри того представления, которое у меня есть»
02:10:09
изображение
02:10:10
это изображение является самозакрывающимся компонентом
02:10:12
что происходит из реакции Native, мы
02:10:14
скажу, что источник в этом
02:10:16
случай исходит из нашего uri, который является
02:10:19
URL-адрес здравомыслия, окей, в данном случае это
02:10:22
URL4 будет маленьким помощником
02:10:25
мы собираемся передать изображение
02:10:27
и мы получим из него URL
02:10:28
окей, упс
02:10:30
изображение
02:10:31
[Музыка]
02:10:32
URL-адрес с точкой, URL-адрес с точкой, бам
02:10:35
окей, и мое дело там сходит с ума
02:10:38
ты иди, ладно, теперь я собираюсь
02:10:40
скажем, имя класса будет
02:10:42
высота 20 ширина 20. ух купил
02:10:45
фон будет серым из 300
02:10:48
и дополнение из четырех, окей
02:10:50
и тогда мы собираемся сделать, что я
02:10:52
собираюсь добавить немного кастомизма
02:10:54
стиль здесь, я покажу вам, посмотрите, что я
02:10:56
значит, на самом деле все в порядке
02:10:58
делает это все время, все в порядке, так что пряжа
02:10:59
казалось, разрешил дерево зависимостей
02:11:01
намного лучше, вот и все
02:11:03
мне помогло, так что если ты не можешь, если
02:11:04
у вас такая же проблема, используйте пряжу в этом
02:11:06
случай прав, я не буду объяснять полностью
02:11:08
почему, но в этот момент, хм, но вот ты
02:11:10
ладно, просто сделай, я должен открыться
02:11:13
снова
02:11:14
теперь должно быть все в порядке
02:11:16
окей, давай скачаем новый пакет, давай
02:11:19
просто отложи это немного, дай
02:11:20
себе максимальное пространство, которое мы можем
02:11:22
возможно, это будет продолжаться
02:11:24
и собери комплект и бум там
02:11:25
с тобой все в порядке, видишь, все честно и
02:11:27
ну, мы делаем нандо, теперь я знаю цену
02:11:30
и это работает нормально, классная штука, так что
02:11:32
вот стиль, я собираюсь пойти дальше и
02:11:34
сказать, что граница, которую каждый из
02:11:37
фотографии не должны иметь рамку
02:11:39
ширина
02:11:40
одного, и цвет границы будет
02:11:42
будь вот таким, слегка серым, окей, так
02:11:45
я сохранил это значение здесь
02:11:47
окей, теперь у нас есть вот такой миленький вид
02:11:49
из вас знают, что появляются фотографии, и мы
02:11:50
просто нужно, чтобы это выглядело вот так
02:11:53
да, так как, черт возьми, мы это сделаем, ладно
02:11:55
так что это очень легко, я люблю говорить легко
02:11:57
но это красиво, это просто практика
02:11:59
имя класса равно белому фону, мы
02:12:02
я скажу граница
02:12:04
заполнение четырех добавление сохранения на четыре удара
02:12:07
сразу же мы можем начать немного видеть
02:12:08
немного лучше, когда я говорю «серая граница»
02:12:12
так граница
02:12:13
серый
02:12:14
200 окей
02:12:17
и что теперь будем делать
02:12:19
мы действительно собираемся немного
02:12:21
немного исправлено представление, так что это
02:12:23
сначала это должен быть flex row flex
02:12:25
ряд потрясающий, а потом вид отсюда
02:12:30
Итак, во-первых, я что-то напутал
02:12:33
у нас должен был быть вид
02:12:35
и тогда это должно было быть на самом деле
02:12:38
в отдельном представлении, поэтому я сделал немного
02:12:40
здесь ошибка, поэтому наше изображение здесь
02:12:44
находится на виду, окей
02:12:46
тогда это
02:12:47
посмотрите прямо здесь, должно быть интервью, окей
02:12:49
так что это должно быть в поле зрения
02:12:52
как это
02:12:53
вот и все
02:12:54
а этот должен быть гибким, так что
02:12:56
имя класса flex one
02:12:58
и дополнение справа от двух
02:13:00
окей, я допустил здесь глупую ошибку
02:13:02
давай починим, эээ
02:13:05
окей, у меня такой взгляд
02:13:07
у меня есть вот это ты, это неправильно
02:13:11
и
02:13:12
Это
02:13:13
не то, что я хотел сделать
02:13:15
хорошо
02:13:16
у меня есть свое мнение
02:13:18
внутри моего взгляда у меня есть другой взгляд
02:13:20
что это такое, это нормально
02:13:23
и тогда мне нужен кусок
02:13:26
напиши окей
02:13:29
и тогда этот будет гибким
02:13:31
ряд, я думаю, мне нужно окружить

Описание:

🚨 Join the world’s BEST developer community “Zero to Full Stack Hero” NOW: https://www.papareact.com/course 🖥️ Join me as I build 4 Apps using React Native: 1️⃣ DELIVEROO with SanityCMS, GROQ, Redux, TailwindCSS & Navigation 2️⃣ UBER with Navigation, Redux, Tailwind CSS & Google Autocomplete 3️⃣ TINDER with Messaging, ContextAPI, Tailwind, Google Auth & Firebase 4️⃣ SIGNAL with 1 -1 Messaging, Navigation, Expo & Firebase 🕐 TABLE OF CONTENTS: INTRODUCTION 00:00 Intro 01:39 Zero to Full Stack Hero 03:05 Sanity Sponsorship 1️⃣ DELIVEROO BUILD 05:23 Build Showcase & Explanation 12:03 Expo Explanation 13:03 Setting Up Expo & Tailwind CSS 26:30 Setting Up React Native Navigation 30:21 Building the Home Screen 36:18 Adding Heroicons 44:16 Building the Body Section 44:46 Building the Categories of the Body Section 46:19 Live Debugging 58:12 Building the Featured Rows 01:12:13 Adding Sanity 01:18:20 Adding and Changing Sanity Schemas 01:24:17 Adding Data in Sanity Studio 01:33:38 Querying & Pulling Data from Sanity Studio 01:51:01 Building the Restaurant & Restaurant Info Screen 02:04:19 Building the Menu Section 02:04:50 Building the Dish Rows 02:17:36 Explaining and Implementing Redux 02:25:19 Adding Add to Basket Functionality 02:34:19 Building the Basket Pop Up 02:41:49 Building the Basket Screen 02:47:51 Adding Grouping Menu Items Functionality 03:05:35 Building the Placing Order Screen with Animations 03:13:07 Building the Delivery Screen 03:19:11 Adding Map & Pin Functionality 03:26:00 Final Build Explanation and Demo 03:29:26 Intermission 1 2️⃣ UBER BUILD 03:30:41 Build Showcase & Explanation 03:35:22 Setting up Expo 03:47:34 Adding Redux 04:04:29 Building the HomeScreen Component 04:13:38 Building the NavOptions Component 04:22:23 Adding React Native Elements & React Native Navigation 04:40:16 Adding Google Autocomplete Library 05:06:26 Udemy Courses Suck! 05:12:56 Adding React Native Maps Library 05:26:25 Building the NavigateCard Component (1/2) 05:35:31 Adding the Directions API 05:44:00 Building the NavFavourites Component 05:51:15 Adding Keyboard Avoiding View 05:54:09 Building the NavigateCard Component (2/2) 06:00:11 Building the RideOptionsCard Component 06:16:56 Adding the Travel Time Calculation 06:25:51 Adding the Price Calculation 06:31:05 Building the Menu Icon 06:33:54 Live Debugging 06:35:05 Final Build Demo 06:36:47 Intermission 2 3️⃣ TINDER BUILD 06:39:17 Build Showcase 06:41:52 Build Explanation 06:44:08 Setting up & Explaining Expo 06:49:10 Setting up Tailwind React Native 06:55:51 Setting up & Adding React Native Navigation 07:05:17 Building the Home Screen (1/2) 07:07:35 Building the Login Functionality (1/2) 07:10:53 Creating a useAuth Custom Hook 07:14:27 Adding the Context API 07:19:23 Building the Login Functionality (2/2) 07:23:30 Setting up Firebase 07:23:59 Adding Firebase to the App 07:28:57 Adding Google Authentication 08:10:05 Optimising using useMemo 08:13:50 Building the Login Screen 08:22:02 Building the Header Section 08:37:24 Building the Cards Section 09:03:51 Building the Modal Screen 09:25:45 Building the Home Screen (2/2) 09:42:29 Adding the Swipe Functionality 09:57:36 Adding the Matching Functionality 10:09:48 Building the Match Screen 10:18:29 Building the Chat Screen 10:19:27 Building the Header Section 10:23:58 Building the Chat List/Row Section 10:42:41 Building the Message Screen (1/2) 10:45:24 Live Debugging 10:54:15 Building the Message Screen (2/2) 11:04:45 Adding the Sender & Receiver Message Functionality 11:18:18 Adding the Last Message Functionality 11:22:20 Final Build Demo 11:24:20 Intermission 3 4️⃣ SIGNAL BUILD 11:25:19 Build Showcase & Explanation 11:31:45 Setting up Firebase 11:32:19 Adding Firebase to the App 11:33:01 Starting the Build 11:37:48 Adding React Native Navigation 11:41:45 Building the Login Screen 11:46:05 Adding React Native Elements 11:58:27 Building the Register Screen 12:13:05 Adding Authentication 12:31:50 Building the Home Screen 12:56:27 Building the Add a New Chat Screen 13:11:48 Building the Chat Screen 14:02:35 Deploying the Final Demo App 14:11:26 Outro

Готовим варианты загрузки

popular icon
Популярные
hd icon
HD видео
audio icon
Только звук
total icon
Все форматы
* — Если видео проигрывается в новой вкладке, перейдите в неё, а затем кликните по видео правой кнопкой мыши и выберите пункт "Сохранить видео как..."
** — Ссылка предназначенная для онлайн воспроизведения в специализированных плеерах

Вопросы о скачивании видео

mobile menu iconКак можно скачать видео "React Native Crash Course for Beginners - Build 4 Apps in 14 Hours (Redux, Tailwind + More) [2023]"?mobile menu icon

  • Сайт http://unidownloader.com/ — лучший способ скачать видео или отдельно аудиодорожку, если хочется обойтись без установки программ и расширений. Расширение UDL Helper — удобная кнопка, которая органично встраивается на сайты YouTube, Instagram и OK.ru для быстрого скачивания контента.

  • Программа UDL Client (для Windows) — самое мощное решение, поддерживающее более 900 сайтов, социальных сетей и видеохостингов, а также любое качество видео, которое доступно в источнике.

  • UDL Lite — представляет собой удобный доступ к сайту с мобильного устройства. С его помощью вы можете легко скачивать видео прямо на смартфон.

mobile menu iconКакой формат видео "React Native Crash Course for Beginners - Build 4 Apps in 14 Hours (Redux, Tailwind + More) [2023]" выбрать?mobile menu icon

  • Наилучшее качество имеют форматы FullHD (1080p), 2K (1440p), 4K (2160p) и 8K (4320p). Чем больше разрешение вашего экрана, тем выше должно быть качество видео. Однако следует учесть и другие факторы: скорость скачивания, количество свободного места, а также производительность устройства при воспроизведении.

mobile menu iconПочему компьютер зависает при загрузке видео "React Native Crash Course for Beginners - Build 4 Apps in 14 Hours (Redux, Tailwind + More) [2023]"?mobile menu icon

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

mobile menu iconКак скачать видео "React Native Crash Course for Beginners - Build 4 Apps in 14 Hours (Redux, Tailwind + More) [2023]" на телефон?mobile menu icon

  • Вы можете скачать видео на свой смартфон с помощью сайта или pwa-приложения UDL Lite. Также есть возможность отправить ссылку на скачивание через QR-код с помощью расширения UDL Helper.

mobile menu iconКак скачать аудиодорожку (музыку) в MP3 "React Native Crash Course for Beginners - Build 4 Apps in 14 Hours (Redux, Tailwind + More) [2023]"?mobile menu icon

  • Самый удобный способ — воспользоваться программой UDL Client, которая поддерживает конвертацию видео в формат MP3. В некоторых случаях MP3 можно скачать и через расширение UDL Helper.

mobile menu iconКак сохранить кадр из видео "React Native Crash Course for Beginners - Build 4 Apps in 14 Hours (Redux, Tailwind + More) [2023]"?mobile menu icon

  • Эта функция доступна в расширении UDL Helper. Убедитесь, что в настройках отмечен пункт «Отображать кнопку сохранения скриншота из видео». В правом нижнем углу плеера левее иконки «Настройки» должна появиться иконка камеры, по нажатию на которую текущий кадр из видео будет сохранён на ваш компьютер в формате JPEG.

mobile menu iconСколько это всё стоит?mobile menu icon

  • Нисколько. Наши сервисы абсолютно бесплатны для всех пользователей. Здесь нет PRO подписок, нет ограничений на количество или максимальную длину скачиваемого видео.