React Native использует один и тот же код для ios и android или оба кода платформы должны быть написаны отдельно?

Привет, у меня очень хороший опыт работы над Cordova с Ionic Framework и некоторыми другими фреймворками. Лично я не доволен производительностью Ionic, поэтому планирую перейти на React Native с Ionic.

Я просто хочу узнать несколько вещей перед переключением. В проекте Cordova, когда вы пишете приложение для Android, тот же код будет использоваться для iOS и Windows. Так что экономится много времени на написание кода. Вам просто нужно добавить платформу с помощью однострочной команды. Но насчет React я не уверен.

То же самое происходит в React Native? Android и iOS используют один и тот же код с другой платформой, или мы должны писать весь код для другой платформы, или какой-то процент кода используется совместно?

Также Ionic framework поставляется с множеством компонентов и предварительно созданных пользовательских интерфейсов. React Native также предлагает пользовательские интерфейсы и компоненты?

Следует ли мне сначала изучить React js, чтобы запустить React Native, или я могу изучить React Native и React Js вместе?

Можем ли мы использовать код React Native для веб-платформы?


person Krishna Karki    schedule 02.08.2016    source источник


Ответы (1)


Итак, начнем со слогана React Native: «Учись один раз, пиши где угодно». Это в значительной степени отвечает на ваш первый вопрос. Вы должны написать код как для своего приложения для Android, так и для приложения для iOS. Это связано с тем, что у Android и iOS разные собственные компоненты. Вы можете повторно использовать часть своего кода, например логику, как распределять данные (в большинстве случаев) и т. Д., Но вам придется настроить это для работы с собственными компонентами как Android, так и iOS. РЕДАКТИРОВАТЬ: Это ранее использовалась практика, но сейчас она устарела, так как теперь вам нужно написать ее только один раз

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

Третий вопрос. Лучше всего, конечно, сначала изучить React, но вы можете легко изучить React, кодируя React Native. React Native Playground - отличное место для экспериментов с React Native. РЕДАКТИРОВАТЬ : RN Playground больше не активна, но есть и другие места, где можно поиграть с RN, например Expo. Опять же. , это зависит от того, как вы хотите изучать новые фреймворки и языки.

Четвертый вопрос. Нет, вы не можете использовать код React Native в качестве веб-приложения. Это связано с тем, что ваше приложение React Native будет использовать собственные компоненты. В iOS вы используете <View />, что аналогично <div /> (в значительной степени). Это не значит, что вы не с пустыми руками, если хотите впоследствии создать веб-приложение. Вы можете использовать части своего макета и переписывать их для работы в Интернете. Как перевод представления в div, изображения в img и т. Д.

gl

person magnudae    schedule 02.08.2016
comment
Спасибо, вы очень хорошо ответили. - person Krishna Karki; 02.08.2016
comment
Хочу добавить, что первый пункт немного устарел в 2018 году. Все еще есть компоненты, специфичные для платформы, но React Native теперь поддерживает создание одного приложения из-за того, что они имеют довольно большой набор компонентов, которые можно использовать на обеих платформах. - person magnudae; 28.02.2018
comment
Очень хорошо ответил. Просто отредактируйте первую часть, так как это не актуально в 2018 году. - person Ashish Yadav; 12.10.2018