Book Image

React and React Native

By : Adam Boduch
Book Image

React and React Native

By: Adam Boduch

Overview of this book

para 1: Dive into the world of React and create powerful applications with responsive and streamlined UIs! With React best practices for both Android and iOS, this book demonstrates React and React Native in action, helping you to create intuitive and engaging applications. Para 2: React and React Native allow you to build desktop, mobile and native applications for all major platforms. Combined with Flux and Relay, you?ll be able to create powerful and feature-complete applications from just one code base. Para 3: Discover how to build desktop and mobile applications using Facebook?s innovative UI libraries. You?ll also learn how to craft composable UIs using React, and then apply these concepts to building Native UIs using React Native. Finally, find out how you can create React applications which run on all major platforms, and leverage Relay for feature-complete and data-driven applications. Para 4: What?s Inside ? Craft composable UIs using React & build Native UIs using React Native ? Create React applications for major platforms ? Access APIs ? Leverage Relay for data-driven web & native mobile applications
Table of Contents (34 chapters)
React and React Native
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Dedication
Preface

Completing todo items


The last piece of this application is rendering each todo item and providing the ability to change the status of the todo. Let's take a look at this code:

import React, { Component, PropTypes } from 'react'; 
import Relay from 'react-relay'; 
import { 
  Text, 
  View, 
  Switch, 
} from 'react-native'; 
 
import styles from './styles'; 
import ChangeTodoStatusMutation from 
  './mutations/ChangeTodoStatusMutation'; 
 
// How to style the todo text, based on the 
// boolean value of the "completed" property. 
const completeStyleMap = new Map([ 
  [true, { textDecorationLine: 'line-through' }], 
  [false, {}], 
]); 
 
class Todo extends Component { 
  static propTypes = { 
    relay: PropTypes.any.isRequired, 
    viewer: PropTypes.any.isRequired, 
    todo: PropTypes.shape({ 
      text: PropTypes.string.isRequired, 
      complete: PropTypes.bool...