React Native is a technology that gained popularity right after its initial use in 2013.
Here are a few FAQ on React Native:
>Why is this framework so complicated? Why do I need so many different libraries to understand what the heck is going on?
>I have an existing App developed in Objective-C / Swift / Java. Can I still use React Native?
Yes absolutely! React Native has the ability to call native code without too much trouble.
>How is it different from Ionic / Cordova / Appcelerator?
React Native wraps native UI components that a standard mobile app would call on. for instance, a component in React Native references and manages a UIView in iOS.
>How do I handle navigation in React Native? When should I introduce all that complexity?
.A lot many people are working on making a truly seamless navigation library which uses the GPU for stateful transitions on iOS, Android and even on the web with a single common code base. With the introduction of navigation and routing library as early as possible would make adding new views a breeze.
>When do I start using Redux with React Native? When should I consider an alternative state container?
Unless the app you intend to implement is a video game or is dealing with only a handful of entirely disconnected views, I can’t think of a situation where the shared global state is not required. Even shifting from one active tab to another could be referred to as a global state change. If you end up using react-navigation, redux can be easily incorporated as part of the project setup.
>What are some of the drawbacks to using React Native instead of writing a native application?
React Native is used to providing a layer of abstraction between native mobile libraries and application.
You should not use React Native if you:
- Have separate teams for Android and iOS
- Are coding a video game
- Have a large body of User Interface code written in Java/Objective-C