Developing Applications using ReactJS

This four-day course is designed for developers who are already familiar with JavaScript, including ES6, and wish to learn how to create User Interfaces using the ReactJS library. It will discuss how ReactJS can be used to create reusable, interactive UI components, single page applications using React Router and an introduction to Flux and Redux. The aim of the course is that delegates develop their skills, knowledge and understanding so that they can confidently use ReactJS to create User Interfaces.

The results of the training

  • Create components for use in a ReactJS application using JSX
  • Pass data around an application built in ReactJS
  • How components can be used as part of single page applications

Prerequisites to the course (recommended):
A solid understanding of JavaScript and preferably attendance at the following QA courses “Programming with JavaScript” and “Next Generation JavaScript: ECMAScript 2015” (or equivalent programming experience).

Please note: Before attending this class delegates must have a Microsoft account (signing up one is free). The instructions on how to set up a Microsoft account can be found here.

Length: 32 academic hours

The prerequisite for issuing the certificate is full participation in training.


The training topics and description:

Introduction to ReactJS 
(What is ReactJS; What does ReactJS do; ReactJS, the DOM and the VirtualDOM)

ReactJS Projects
(Project Fundamentals; The react and react-dom packages; Babel and Webpack; Other project files)

Components and JSX
(Components; JSX and how to modify a project to use JSX; Chrome React Developer tools)

Using props and state
(props – description, use, typing and validation; state – description, use, setting and changing; Passing state through props; Functional components; Lifting up state)

Component Lifecycles
(Lifecycle Methods: Mouting, Updating and Unmounting; ReactJS and the DOM; ReactDOM methods)

Forms, Events and Refs
(Controlled components; How are Events controlled; What are Refs; Uncontrolled components; Forms as child components)

Working with Datasets
(Collecting data from forms; Data sources; Arrays/Iterators and Keys; Sub-Components)

Composition vs Inheritance
(Composition and the use of containment and specialisation; Inheritance use in ReactJS)

Single Page Applications
(Single Page Applications and React Router; Defining and Lining to Routes; Displaying Route Content; Params and Nesting)

Thinking in React
(Facebook’s ‘Thinking in React’ Philosophy)

Working with other Libraries


  • Using Flux and Redux with React
  • ReactJS as the V part for Angular and other frameworks