Book Image

Mastering React Native

Book Image

Mastering React Native

Overview of this book

React Native has completely revolutionized mobile development by empowering JavaScript developers to build world-class mobile apps that run natively on mobile platforms. This book will show you how to apply JavaScript and other front-end skills to build cross-platform React Native applications for iOS and Android using a single codebase. This book will provide you with all the React Native building blocks necessary to become an expert. We’ll give you a brief explanation of the numerous native components and APIs that come bundled with React Native including Images, Views, ListViews, WebViews, and much more. You will learn to utilize form inputs in React Native. You’ll get an overview of Facebook’s Flux data architecture and then apply Redux to manage data with a remote API. You will also learn to animate different parts of your application, as well as routing using React Native’s navigation APIs. By the end of the book, you will be able to build cutting-edge applications using the React Native framework.
Table of Contents (20 chapters)
Mastering React Native
Credits
Disclaimer
About the Authors
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface

Understanding Animated


LayoutAnimation is great for transitioning views between states using simple animation logic. However, LayoutAnimation is limited in that it doesn't allow you to sequence more complex animations or potentially tie an animation to a user gesture. This is where the Animated API fills the gap. Internally, the Animated API leverages requestAnimationFrame to synchronize animations to 60 frames per second. It then updates the state via setNativeProps as a means of avoiding React's diffing algorithm, thus keeping the animations performant and smooth.

In order to use the Animated API, you need two things. First, you'll need an Animated.* component--Animated.Image, Animated.View, or Animated.Text. These special Animated.* components possess special bindings that tie them to the second thing you'll need an: Animated.Value or an Animated.ValueXY. These values are used to track animation changes across either a single-dimension Animated.Value or a two-dimension Animated.ValueXY...