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

Using Navigator


In this section, we're going to add a simple introduction screen to our application that is presented to the user before the news feed. When they tap the screen, it will navigate to the home screen that we currently have in the application, as shown in the following screenshot:

The first thing we'll do is create a simple new component for this intro screen in a new src/components/IntroScreen.js file:

import React, { PropTypes } from 'react'; 
import { 
  View, 
  TouchableOpacity, 
  StatusBar, 
  StyleSheet 
} from 'react-native'; 
import Title from './Title'; 
import AppText from './AppText'; 
import * as globalStyles from '../styles/global'; 
 
// Set the status bar for iOS to light 
StatusBar.setBarStyle('light-content'); 
 
const IntroScreen = ({ onPress }) => ( 
  <View style={[globalStyles.COMMON_STYLES.pageContainer, styles.container]}> 
    <TouchableOpacity 
      onPress...