Advanced React
Course Objectives
Our engaging instructors and mentors are highly experienced practitioners who bring years of current "on-the-job" experience into every classroom. Working in a hands-on learning environment, guided by our expert team, attendees will learn about and explore:
- Write React components that optimize the virtual DOM
- Make the most of TypeScript with React apps for type safety
- Use prop types instead of TypeScript
- Describe all the built-in hooks
- Write their own custom hooks
- Speed up apps with useMemo and useCallbak
- Solve complex state with useReducer
- Bypass prop drilling with useContext
- Respond to all events - even those React can't handle
- Create navigation routes with the newest router
- Read route parameters and query strings
- Construct the fastest hyperlinks
- Author sub-routes
- Optimize loading with sub-routes
- Make React components conform to a11y and a18n needs
Course Prerequisites
This is an intermediate-level course for web developers with prior practical experience working with React. Attendees are required to have a very strong grasp of React, Redux and advanced JavaScript.
Take Before: Attendees should have experience with the topics in the following courses, or should have recently attended these as a pre-requisite:
- TT4195: Mastering React | With Redux, Flux, Unit Testing, JSX & More – 5 days
Course Agenda
Please note that this list of topics is based on our standard course offering, evolved from typical industry uses and trends. We’ll work with you to tune this course and level of coverage to target the skills you need most.
Getting Started
Understand the virtual DOM
Why the vDOM?
Reconciliation
How it compares
How to optimize your code
The Ivy engine
How hooks fit in
Why one-way data flow
Transpiling, bundling, minifying with webpack
TypeScript in React
JavaScript vs Java (et al.)
What TypeScript really does
TS does not provide strong typing
Interfaces vs types
Embracing functional vs OOP
Generics in React
Discriminated unions
CSS Properties
Event object
3rd party libraries with no TS support
Proptypes
Built-in prop type checking
Making props optional
Setting prop types
Speeding up React with lazy loading
The best strategy
The lazy method
The Suspense component
Fallbacks
Code splitting
Error boundaries
Hooks overview
All built-in hooks
When to use the obscure ones
useContext for code clarity
Why prop drilling is evil
Create context
Reading context
Updating context
Deep dive into useEffect
How useEffect works
Simulating lifecycle events
Exhausting dependencies
useEffect belongs with its own render
Speeding your app with useMemo and useCallback
What is the difference?
Optimizing components with useCallback
Optimizing with useMemo
Why not just useMemo everything?
Fixing complex state - useReducer
What is useReducer?
Woot! No need for Redux, right?
How to optimize useReducer
When not to useReducer
How to write a custom hook
First - why?
The rules
How to write the code
How to best use a custom hook
Advanced event handling
React's synthetic events
How to handle events that React refuses to
Low-level power of events
The need to de-register events
Let's create an infinite scroll component
Routing
Overview of the newest React Router
Creating baseline routes
Route parameters & query strings
What's the difference?
REST and parameters
Creating route parameters
Reading route parameters
Reading query strings
Efficient hyperlinks
Why not use <a>?
How to do it the modern way
Relative vs absolute paths
Subroutes
Routes within routes
How to create relative routes
How this simplifies your complex navigation
Sorry! It looks like we haven’t updated our dates for the class you selected yet. There’s a quick way to find out. Contact us at 502.265.3057 or email info@training4it.com
Request a Date