Introduction

to ReactJS!

Hi, I'm JP Wallhorn


These slides will be available shortly
after this talk
I'll tweet the link out.

@Jaypi_

I have my own company

Syntx

Worked with

Blue Bottle Coffee
U.S. GOV
Mobile Apps Backends

Before that I worked for ServiceLink Auction as Engineering Director

Implemented React.JS
E-Commerce Platform
(With focus on SEO)

Let us talk about
ReactJS

This is the roadmap

What? Why? How?
Foundation
State Management
Create React App
Ressources

READY?!

this.letsDoIt()

What? Why? How?
Foundation
State Management
Create React App
Ressources

What is it?

It's not a framework

JavaScript Library

With a rich community

Handling the View(MVC)
User Interface

HTML in JavaScript

1st doing it this way

JSX Support

JSX produces React “elements”

"Allows you to use
variables within
HTML code"

All files are getting
compiled into one bundle
that is getting served
to the client

The client renders the
JavaScript and puts out HTML

Used to build complex and modern UIs

Component Based Structure

App with
simple component

Stateful Component

ReactJS Live Demo

Component

with external

plugins

What? Why? How?
Foundation
State Management
Create React App
Ressources

Foundation

Consists of pages, components
and containers

Page,
Component,
Container

Page

A page contains
containers and components

Component

It represents a small visual
block within a page.

Breaks up dependencies

Re-usable

Stateless

(Dumb Component)

Container

A stateful component

What does
that mean?

Concerned
how things
work

Provide data
to the
behaviour

Detailed Comparison

Medium Article by Dan Abramov

Folder Structure

Props

Allows you to pass data from parent
(wrapping) component

Triggers UI to

re-render

when changed

State

State is used to change the component
from within rather than by parent

Also triggers re-rendering

Manipulating the state

What is this
re-rendering all about?

Here's your
new ...

Wallpaper

What's going on???

Let me show you

Component Lifeycle

Credits

React is a
Single Page Application

But ... ?

React can

also be a

Multi Page Application

React Router

Client-Side Routing

What? Why? How?
Foundation
State Management
Create React App
Ressources

Multiple Options

Per usual

Flux

The default library by Facebook

But then
there is ...

Redux

Pretty much the final enemy

Architecture

Redux vs Flux

stackoverflow

Context API

The new kid on the block
to avoid props drilling

What? Why? How?
Foundation
State Management
Create React App
Ressources

Create
React
App

Worry-free starter pack

GitHub

Easy installation

Structure

You are lucky
Version 2 just
got released

Newest Additions

CSS and SASS Modules

Really excited about this one

Some other additions

Why worry-free?

No webpack
configuration needed

Let me explain what webpack is

Webpack

Personally, love everything they do

Compiles your
JavaScript code

Serves those bundles to the clients

You want
more?

Especially needed for bigger projects

Eject

WARNING! Can not be un-done

What? Why? How?
Foundation
State Management
Create React App
Ressources

Learning by doing

Start typing already

Udemy
Course

React Complete Guide by Maximilian

ReactJS

Official Website

Wes Bos Courses

Wes Bos Courses

React Router Training

React Training

Advanced
React
Workshop

Workshop by Ryan Florence

Finished!

Quote by Wes Bos

React is Evolving

but..

Most of these are
additions, not changes

They make our applications better!

I hope this
was useful!

Any questions?