Preface
History
What is React?
Who This Book Is For
Required Tools
Node.js
Command Line Shell/Terminal
Local Web Server
JSX Compilation with Babel & Browserify
Task Runners / Module Bundlers
ECMAScript 6
Errata
Work in Progress
Feedback
Chapter 1: Getting Started With React
Setting Up: Local Web Server, Task Runners & JSX Transpiler
An ECMAScript 6 Primer
Class Syntax
Module Loading
"Hello World" in React
Properties & Displaying Data With this.props
Configuring webpack to Watch Our Files for Changes
Configuring webpack to Minify JavaScript
Using webpack as a Web Server
Summary
Chapter 2: To Do: Create Your First React Application
Setting Up
Writing a "To Do" Application
Component Composition
Properties With this.props
Handling Events & State
Binding Context
Adding "To Do" Items & Handling User Input
Improving Our Code
Validation
Removing "To Do" Items & Passing Click Events From Child Component to a Parent Component
Editing "To Do" Items
Conditionally Displaying Elements Within Components
CSS Styling & Polish in React
Summary
Chapter 3: Styling React Components
Philosophy of React Styling
Styling Our "To Do" Application
Initial Styling
Combining Multiple Styles
Animation
Summary
Chapter 4: API Integration With React
What is an API?
Creating a REST API in Node.js
Integrating our API with React
Sending Data to the Server
React Component Lifecycle
Mounting - Creating & Adding Components
Unmounting - Deleting & Removing Components
Initial Component Prop Values & Component State Changes
Summary
Chapter 5: React Router
JavaScript Routing at a Glance
Setting Up the Project
Implementing React Router
Adding Links
Nested Routes
Index Route
Active Links
Browser History
Summary
Chapter 6: Miscellaneous React Stuff
Globally Accessible Variables
Using the Global Namespace
Singleton Pattern / Exporting Class Instances
Using Event Channels in React
Summary
Chapter 7: State Management Libraries in React
Getting Started
Flux Application Structure
Components
Constants
Dispatcher
Actions
Stores
Putting it All Together
Redux
Setting Up
Integrating Redux Into Our Application
Store
Reducers
Actions
Provider
Connecting the Store, Actions & Reducers
Summary
Conclusion
Appendix A: Code Samples & Repos