Я начал изучать React из любопытства и хотел узнать разницу между React и React Native, хотя не смог найти удовлетворительного ответа с помощью Google. React and React Native, похоже, имеет тот же формат. У них совсем другой синтаксис?
В чем разница между React Native и React?
Ответ 1
ReactJS - это библиотека JavaScript, поддерживающая как интерфейсную сеть, так и работающую на сервере, для создания пользовательских интерфейсов и веб-приложений.
React Native - это мобильная инфраструктура, которая компилируется с нативными компонентами приложений, позволяя создавать собственные мобильные приложения для различных платформ (iOS, Android и Windows Mobile) на JavaScript, что позволяет использовать ReactJS для создания компонентов и реализует ReactJS под капот.
Оба с открытым исходным кодом от Facebook.
Ответ 2
Как вы сказали, Google не может объяснить вам это, но Google был бы очень рад, если бы они изобрели React.
Вот проект React project.
В Facebook они изобрели React, чтобы JavaScript мог быстрее манипулировать DOM сайта с помощью виртуальной модели DOM.
Полное обновление DOM медленнее по сравнению с моделью React Virtual-DOM, которая обновляет только части страницы (читай: частичное обновление).
Как вы можете понять из этого видео, Facebook не изобрел React, потому что они сразу поняли, что частичное обновление будет быстрее, чем обычное обновление. Первоначально им нужен был способ сократить время перестройки приложений Facebook, и, к счастью, это привело к частичному обновлению DOM.
React native - это всего лишь следствие React. Это платформа для создания собственных приложений с использованием JavaScript.
До React native вам нужно было знать Java для Android или Objective-C для iPhone и iPad, чтобы создавать собственные приложения.
С React Native можно имитировать поведение нативного приложения в JavaScript, и в конце вы получите специфический для платформы код в качестве вывода. Вы можете даже смешать собственный код с JavaScript, если вам нужно еще больше оптимизировать свое приложение.
Как сказала Оливия Бишоп в видео, 85% базы кода React можно использовать на разных платформах. Это будут компоненты, которые приложения обычно используют, и общая логика.
15% кода зависит от платформы. Специфичный для платформы JavaScript - это то, что дает платформу вкус (и имеет значение в опыте).
Крутая вещь - это специфичный для платформы код &— уже написано, так что вам просто нужно его использовать.
Ответ 3
React:
React - это декларативная, эффективная и гибкая библиотека JavaScript для создание пользовательских интерфейсов.
Реагировать на родную:
React Native позволяет вам создавать мобильные приложения, используя только JavaScript. Он использует тот же дизайн, что и Реагируйте, позволяя вам составить богатый мобильный интерфейс из декларативного компоненты.
С React Native вы не создаете "мобильное веб-приложение", "приложение HTML5" или "гибридное приложение". Вы создаете настоящее мобильное приложение, которое неотличим от приложения, созданного с использованием Objective-C или Java. реагировать Native использует те же основные строительные блоки пользовательского интерфейса, что и обычные iOS и Приложения для Android. Вы просто соединяете эти строительные блоки, используя JavaScript и React.
React Native позволяет быстрее создавать приложение. Вместо перекомпиляции вы можете мгновенно перезагрузить приложение. С горячим перезагрузка, вы даже можете запустить новый код, сохраняя ваше приложение государство. Попробуйте - это волшебный опыт.
React Native плавно сочетается с компонентами, написанными на Objective-C, Java или Swift. Это просто, чтобы перейти к нативному коду, если вам нужно оптимизировать несколько аспектов вашего приложения. Это также легко построить часть ваше приложение в React Native и часть вашего приложения, использующая собственный код напрямую - так работает приложение Facebook.
Таким образом, React - это библиотека пользовательского интерфейса для просмотра вашего веб-приложения, использующая javascript и JSX, React native - это дополнительная библиотека на верх React, чтобы сделать нативное приложение для устройств iOS
и Android
.
Реагировать пример кода:
import React, { Component } from 'react';
import ReactDOM from 'react-dom';
class Clock extends React.Component {
constructor(props) {
super(props);
this.state = {date: new Date()};
}
componentDidMount() {
this.timerID = setInterval(
() => this.tick(),
1000
);
}
componentWillUnmount() {
clearInterval(this.timerID);
}
tick() {
this.setState({
date: new Date()
});
}
render() {
return (
<div>
<h1>Hello, world!</h1>
<h2>It is {this.state.date.toLocaleTimeString()}.</h2>
</div>
);
}
}
ReactDOM.render(
<Clock />,
document.getElementById('root')
);
Реагируйте на собственный пример кода:
import React, { Component } from 'react';
import { Text, View } from 'react-native';
class WhyReactNativeIsSoGreat extends Component {
render() {
return (
<View>
<Text>
If you like React on the web, you'll like React Native.
</Text>
<Text>
You just use native components like 'View' and 'Text',
instead of web components like 'div' and 'span'.
</Text>
</View>
);
}
}
Для получения дополнительной информации о React посетите официальный сайт команды Facebook:
https://facebook.github.io/react
Для получения дополнительной информации о React Native посетите веб-сайт React native здесь:
Ответ 4
ReactJS является основой для построения иерархии компонентов пользовательского интерфейса. Каждый компонент имеет состояние и реквизит. Данные передаются от верхнего к низкоуровневому компоненту через реквизиты. Состояние обновляется в компоненте верхнего уровня с помощью обработчиков событий.
Реагировать на родные приложения React framework для создания компонентов для мобильных приложений. React native предоставляет базовый набор компонентов для платформ iOS и Android. Некоторые из компонентов в React Native - Navigator, TabBar, Text, TextInput, View, ScrollView. Эти компоненты используют внутренние компоненты iOS UIKit и Android UI. React native также позволяет NativeModules, где код, написанный в ObjectiveC для iOS и Java для Android, может использоваться в JavaScript.
Ответ 5
- React-Native - это платформа для разработки приложений для Android и iOS, которые разделяют 80% -90% кода Javascript.
Хотя React.js является родительской библиотекой Javascript для разработки веб-приложений.
-
При использовании тегов типа
<View>
,<Text>
очень часто в React-Native, React.js использует теги web html, такие как<div>
<h1>
<h2>
, которые являются только синонимами в словаре веб/мобильных разработок. -
Для React.js вам нужна DOM для маршрутизации html-тегов, а для мобильного приложения: React-Native использует AppRegistry для регистрации вашего приложения.
Надеюсь, это легкое объяснение быстрых различий/сходств в React.js и React-Native.
Ответ 6
Во-первых, сходства: как реагировать, так и реагировать (RN) были разработаны, чтобы позволить разработчикам создавать гибкие пользовательские интерфейсы. В этих рамках есть много преимуществ, но наиболее существенным фактором является то, что они предназначены для разработки интерфейса.
Реагирование: Facebook (который разработал RN через несколько лет после реагирования) разработал эту структуру почти так же, как писать свой JavaScript внутри вашего HTML/XML, поэтому теги называются "JSX" (JavaScript XML) (например, знакомый HTML- например теги, такие как <div>
или <p>
). Отличительной чертой React является теги заглавной буквы, которые обозначают пользовательский компонент, например <MyFancyNavbar/>
, что также верно для RN. Однако там, где они различаются, в том, что React использует DOM. Поскольку DOM существует для HTML, React поэтому используется для веб-разработки.
React Native: RN не использует HTML, и поэтому он не используется для веб-разработки. Он используется для... практически всего остального! Мобильная разработка (iOS и Android), смарт-устройства (например, часы, телевизоры), расширенная реальность и т.д. Поскольку RN не имеет DOM для взаимодействия, вместо использования тех же типов тегов HTML, используемых в React, он использует свои собственные теги, которые затем скомпилированы на другие языки. Например, вместо тегов <div>
разработчики RN будут использовать встроенный <View>
RN, который будет компилироваться в другой собственный код под капотом (например, android.view
на Android и UIView
на iOS).
Короче: они очень похожи (для разработки пользовательского интерфейса), но используются для разных сред.
Ответ 7
Мы не можем точно их сравнить. Существуют различия в использовании.
(Обновление 2018 года)
ReactJS
имеет основное внимание: веб-разработка
-
- Реагирует виртуальная DOM быстрее, чем обычная полная обновленная модель, поскольку виртуальная DOM обновляет только части страницы.
-
- Вы можете повторно использовать компоненты кода в React JS, сохраняя много времени. (как вы можете в RN тоже)
-
- Как бизнес: рендеринг ваших страниц полностью, с сервера на браузер улучшит SEO вашего веб-приложения.
-
- Это улучшает скорость отладки, облегчая жизнь вашим разработчикам.
-
- Вы можете использовать гибридную разработку мобильных приложений, например, Cordova или Ionic для создания мобильных приложений с помощью ReactJS, но более эффективно создавать мобильные приложения с помощью React Native из многих точек.
ReactNative
расширение реагирования, достигнутое в области развития мобильных устройств.
-
- его основной фокус → о Мобильном пользовательском интерфейсе.
-
- iOS и Android.
-
- Reusable React Собственные компоненты и модули пользовательского интерфейса, которые позволяют гибридным приложениям визуально отображать.
-
- Нет необходимости пересматривать свое старое приложение. Все, что вам нужно сделать, - добавить в свой существующий код приложения React Native UI без необходимости переписывать.
-
- Не использует HTML для рендеринга приложения. Предоставляет альтернативные компоненты, которые работают аналогичным образом, поэтому их было бы нелегко понять.
-
- Поскольку ваш код не отображается на странице HTML, это также означает, что вы не сможете повторно использовать библиотеки, которые вы ранее использовали с ReactJS, который отображает любые HTML, SVG или Canvas.
-
- React-Native не создан из веб-элементов и не может быть создан таким же образом. Прощай CSS-анимация
Надеюсь, я помог вам :)
Ответ 8
В простом смысле React и React native следуют тем же принципам проектирования, за исключением случая разработки пользовательского интерфейса.
- React native имеет отдельный набор тегов для определения пользовательского интерфейса для мобильных устройств, но оба используют JSX для определения компонентов.
- Главной целью обеих систем является разработка повторно используемых UI-компонентов и сокращение усилий по разработке их составов.
- Если вы правильно спланируете и структурируете код, вы можете использовать одну и ту же бизнес-логику для мобильных устройств и Интернета.
В любом случае, это отличная библиотека для создания пользовательского интерфейса для мобильных устройств и Интернета.
Ответ 9
Реагент - это декларативная, эффективная и гибкая библиотека JavaScript для создания пользовательских интерфейсов. Ваши компоненты говорят, что React то, что вы хотите визуализировать, - тогда React будет эффективно обновлять и отображать только нужные компоненты при изменении ваших данных. Здесь ShoppingList - это класс компонента React или тип компонента React.
Приложение React Native - настоящее мобильное приложение. С React Native вы не создаете "мобильное веб-приложение", "приложение HTML5" или "гибридное приложение". Вы создаете настоящее мобильное приложение, которое неотличимо от приложения, созданного с использованием Objective-C или Java. React Native использует те же основные базовые компоненты пользовательского интерфейса, что и обычные приложения для iOS и Android.
Ответ 10
React Native в первую очередь разработан в JavaScript, а это значит, что большая часть кода, который вам нужен для начала работы, может быть разделен между платформами. React Native будет отображать с использованием собственных компонентов. Реагировать Нативные приложения разрабатываются на языке, который требуется для платформы, на которую он нацелен, Objective-C или Swift для iOS, Java для Android и т.д. Написанный код не используется на разных платформах, и их поведение меняется. Они имеют прямой доступ ко всем функциям, предлагаемым платформой, без каких-либо ограничений.
React - это библиотека JavaScript с открытым исходным кодом, разработанная Facebook для создания пользовательских интерфейсов. Он используется для обработки уровня просмотра для веб-приложений и мобильных приложений. ReactJS используется для создания многоразовых компонентов пользовательского интерфейса. В настоящее время это одна из самых популярных библиотек JavaScript в ее области, и у нее есть прочная основа и большое сообщество. Если вы изучите ReactJS, вам необходимо знать JavaScript, HTML5 и CSS.
Ответ 11
ReactJS - это базовая структура, предназначенная для создания компонента, изолированного на основе реактивного шаблона, вы можете думать о нем как о V от MVC, хотя я бы хотел сказать, что реакция действительно вызывает другое чувство, особенно если вы менее знакомы с реактивной концепцией.
ReactNative - это еще один уровень, который должен иметь набор компонентов для платформы Android и iOS, которые являются общими. Таким образом, код выглядит в основном так же, как и ReactJS, потому что это ReactJS, но он загружается изначально на мобильных платформах. Вы также можете подключить более сложный и платформенный относительный API с Java/ Objective-C/Swift в зависимости от ОС и использовать его в React.
Ответ 12
Реагирование - это базовая абстракция React Native и React DOM, поэтому, если вы собираетесь работать с React Native, вам также понадобится React... то же самое с сетью, но вместо React Native вам понадобится React DOM.
Поскольку React является базовой абстракцией, общий синтаксис и рабочий процесс одинаковы, но компоненты, которые вы будете использовать, очень разные, поэтому вам нужно будет изучить эти различия, которые являются встроенными с React так называемым moto, который "Узнайте, когда-нибудь пишите где угодно", потому что если вы знаете React (базовая абстракция), вы можете просто изучить различия между платформой, не изучая другой язык программирования, синтаксис и рабочий процесс.
Ответ 13
React Js - это библиотека Javascript, в которой вы можете разрабатывать и запускать более быстрые веб-приложения с помощью React.
React Native позволяет создавать мобильные приложения, используя только JavaScript, он используется для разработки мобильных приложений. дополнительная информация здесь https://facebook.github.io/react-native/docs/getting-started.html
Ответ 14
React-Native - это структура, где ReactJS - это библиотека javascript, которую вы можете использовать для своего сайта.
React-native предоставляет стандартные компоненты ядра (изображения, текст), где React предоставляет кучу компонентов и позволяет им работать вместе.
Ответ 15
Что касается жизненного цикла компонентов и всех других колоколов и свистков, это в основном то же самое.
Разница в основном заключается в использовании разметки JSX. React использует тот, который похож на html. Другая - это разметка, которая используется для реагирования-native для отображения представления.
Ответ 16
React Native предназначен для мобильных приложений, а React - для веб-сайтов (front-end). Оба являются фреймворками, изобретенными Facebook. React Native - это кросс-платформенная среда разработки, которая позволяет писать почти тот же код для IOS и Android, и это сработает. Я лично знаю гораздо больше о React Native, поэтому я оставлю это на этом.
Ответ 17
Проще говоря, ReactJS - это родительская библиотека, которая возвращает что-то для отображения в соответствии с хост-средой (браузер, мобильный телефон, сервер, рабочий стол и т.д.). Помимо рендеринга, он также предоставляет другие методы, такие как ловушки жизненного цикла и т.д.
В браузере он использует другую библиотеку реагировать на элементы DOM. В мобильных устройствах он использует компоненты React-Native для визуализации собственных компонентов пользовательского интерфейса для платформы (как для IOS, так и для Android). ТАК,
реагировать + реагировать на дом = развитие сети
реагировать + реагировать-родной = развитие мобильных
Ответ 18
React Js работает с HTML Dom. Но React native работает с мобильным (iOS/android) нативным компонентом пользовательского интерфейса.
Ответ 19
ReactJS - это библиотека javascript, которая используется для создания веб-интерфейсов. Вам понадобится такой пакет, как webpack, и попробуйте установить модули, необходимые для создания вашего сайта.
React Native - это инфраструктура javascript, которая поставляется со всем необходимым для написания мультиплатформенных приложений (таких как iOS или Android). Для сборки и развертывания вашего приложения вам потребуется установить xcode и android studio.
В отличие от ReactJS, React-Native не использует HTML, но аналогичные компоненты, которые вы можете использовать через ios и android для создания вашего приложения. Эти компоненты используют настоящие нативные компоненты для создания приложений для iOS и Android. Благодаря этому приложения React-Native выглядят реальными в отличие от других платформ разработки Hybrid. Компоненты также увеличивают возможность повторного использования вашего кода, поскольку вам не нужно снова создавать один и тот же пользовательский интерфейс на iOS и Android.
Ответ 20
REACT - это библиотека Javascript для создания веб-приложения с большим/малым интерфейсом, например Facebook.
REACT NATIVE - это основа Javascript для разработки собственного мобильного приложения на Android, IOS и Windows Phone.
Оба являются открытыми для Facebook.
Ответ 21
React Native очень похож на ReactJS, но есть различия, которые вам нужно знать, прежде чем вы начнете свое первое родное приложение. Это гибрид для разработки мобильных приложений, доступный для iOS и Android. ReactJS и React Native похожи друг на друга, но в других они совершенно разные. ReactJS является ядром React Native, понимание первого - ключевое.
ReactJs часто называют React или ReactJS - это библиотека JavaScript, ответственная за построение иерархии компонентов пользовательского интерфейса или, другими словами, ответственную за предоставление компонентов пользовательского интерфейса. Он поддерживает как интерфейс, так и сервер. React.js - это просто часть V структуры MVC, библиотека, предназначенная для рендеринга ваших представлений.
Ответ 22
React.js
React.js, часто называемый React или ReactJS, представляет собой библиотеку JavaScript, отвечающую за построение иерархии компонентов пользовательского интерфейса или, другими словами, ответственную за предоставление компонентов пользовательского интерфейса. Он поддерживает как интерфейс, так и сервер.
Реагировать на родной
React Native - это среда для создания собственных приложений с использованием JavaScript. Реагировать Нативные компиляции в родные компоненты приложения, что позволяет создавать собственные мобильные приложения. В React JS React является базовой абстракцией React DOM для веб-платформы, а с React Native, React по-прежнему является базовой абстракцией, но React Native. Таким образом, синтаксис и рабочий процесс остаются похожими, но компоненты разные.
React.js был разработан Facebook, чтобы удовлетворить его потребность в динамическом и высокопроизводительном пользовательском интерфейсе (UI). В 2011 году Jordan Walke и его команда из Facebook выпустили библиотеку React JS, библиотеку JavaScript, которая объединила скорость JavaScript и новый способ рендеринга страниц, что привело к быстрому и динамичному пользователю. В 2015 году, через два года после того, как команда открыла React.js, и ее популярность выросла, они выпустили React Native.
Ответ 23
Вот те различия, о которых я знаю:
- У них разные теги html: React Native использует для обработки текста, а не в React.
- React Native использует сенсорные компоненты вместо обычного элемента кнопки.
- React Native имеет компоненты ScrollView и FlatList для списков воспроизведения.
- React Native использует AsyncStorage, а React использует локальное хранилище.
- В React Родные маршрутизаторы функционируют как стек, а в React мы используем компоненты Route для навигации по карте.
Ответ 24
В Facebook они изобрели React, поэтому JavaScript может манипулировать веб-сайтом DOM быстрее, используя виртуальные модели DOM. Вот проект React (https://github.com/facebook/react). Полное обновление DOM происходит медленнее по сравнению с моделями React virtual-dom, которые обновляют только часть страницы (читай: частичное обновление).
Facebook они изобрели React не потому, что они сразу поняли, что частичные обновления будут быстрее обычных. Первоначально они нуждались в способе сокращения времени восстановления приложений Facebook, и, к счастью, это привело к оживлению частичных DOM.
React native (https://github.com/facebook/react-native) является следствием реакции. Это платформа для создания собственного приложения с использованием JavaScript.
Перед тем, как порекомендовать родной, вам нужно было узнать Java для Android или Objective-C для iPhone и iPad, чтобы создать собственное приложение.
С помощью React Native можно имитировать поведение родных приложений в JavaScript и в конце, вы получите код конкретной платформы в качестве выходов. Вы можете даже комбинировать собственный код с JavaScript, если вам нужно оптимизировать ваши приложения.
Ответ 25
В итоге: React.js для веб-разработки и React-Native для разработки мобильных приложений
Ответ 26
React Js - React JS - это библиотека javascript, большая библиотека, а не фреймворк
- Это следует за компонентным подходом, который помогает в создании
повторно используемые компоненты пользовательского интерфейса- Используется для разработки сложных интерактивных веб-приложений и мобильных интерфейсов.
- Хотя он был открыт только в 2015 году, его поддерживает одно из крупнейших сообществ.
ReactNative - React Native - это платформа мобильных приложений с открытым исходным кодом.
Ответ 27
реагирует на использование команды activ-dom, а не на браузер dom, а в программе native native используется виртуальный dom, но в обоих случаях используется один и тот же синтаксис, т.е. если вы можете использовать реактив, то вы можете использовать реактив. как ваша реагирующая навигация и другие общие библиотеки, которые у них есть общие.
Ответ 28
ReactJS предназначен для Интернета, а React Native - для мобильных устройств. Не переусердствуйте.
Ответ 29
React Native предназначен для мобильных устройств, а React - для веб-приложений
Ответ 30
React - это основа, используемая для разработки веб-приложений.
React native - это платформа, используемая для разработки мобильных приложений (iOS и Android).