Reactnative can develop iOS and Android native apps (App development company Ty300.com) based on the current hot open source JavaScript library react.js. And react native has been used in production environments--facebook Groups IOS apps are developed based on it.
The principle of React native is to use React abstract operating system native UI components (introductory tutorial qkxue.net) in JavaScript instead of DOM elements, such as <View> instead of <div>, < Image> replacement .
Behind the scenes, React native runs the JavaScript engine in another background thread outside the main thread, communicating between two threads via a batch of quantitative async message protocols (with a dedicated React plugin).
UI aspect react native provides a cross-platform similar flexbox layout system and also supports a subset of CSS. It can be developed using JSX or the common JavaScript language, as well as Coffeescript and typescript. It has been commented that React's UI layer model is much better than Uikit.
Better yet, thanks to Web-based technology, developers can look at the application running in the emulator at any time in the browser, refresh the line, without compiling, cool bar.
React native offers three benefits over standard web development or native development:
Gesture recognition: Mobile applications built on Web-based technologies (HTML5/JAVASCRIPT) are often complained of lack of timely response. The native UI-based react native avoids these problems to enable real-time response.
Native components: Components implemented using Html5/javascript are always a little less than native components, while react native naturally does not have this problem due to the native UI component.
Styles and layouts: IOS, Android, and web-based apps each have different styles and layout mechanisms. React native implements a consistent cross-platform style and layout across all mobile platforms through a Flexbox-based layout engine.
React Native Tutorials