ReactJs Table of Content


Table of Contents
 

JavaScript Refresher

  • Understanding "let" and "const"
  • Arrow Functions
  • Exports and Imports
  • Understanding Classes
  • Classes, Properties, and Methods
  • The Spread and Rest Operator
  • Destructuring
  • Reference and Primitive Types Refresher
  • Refreshing Array Functions

React Basics and Working with Components

  • What are Components? And Why is React All About Them?
  • React Code is Written in a Declarative Way
  • Creating a New React Project
  • Analyzing a Standard React Project
  • Introducing JSX
  • How React Works
  • Building a First Custom Component
  • Writing More Complex JSX Code
  • Adding Basic CSS Styling
  • Outputting Dynamic Data and Working with Expressions in JSX
  • Passing Data Via "props"
  • Adding "normal" JavaScript Logic to Components
  • Splitting Components into Multiple Components
  • Time to Practice: React and Component Basics - Problem
  • Time to Practice: React and Component Basics - Solution
  • The Concept of "Composition" ("children props")
  • A First Summary
  • A r Look at JSX
  • Organizing Component Files
  • An Alternative Function Syntax

React State and Working with Events

  • Listening to Events and Working with Event Handlers
  • How Component Functions are Executed
  • Working with "State"
  • A r Look at the "useState" Hook
  • Adding Form Inputs
  • Listening to User Input
  • Working with Multiple States
  • Using One State Instead (and What's Better)
  • Updating State that Depends on the Previous State
  • Handling Form Submission
  • Adding Two-Way Binding
  • Child-to-Parent Component Communication
  • Lifting the State Up
  • Time to Practice: Working with Events and State - Problem
  • Time to Practice: Working with Events and State - Solution
  • Controlled Versus Uncontrolled Components and Stateless Versus Stateful Components

Rendering Lists and Conditional Content

  • Rendering Lists of Data
  • Using Stateful Lists
  • Understanding "Keys"
  • Time to Practice: Working with Lists - Problem
  • Time to Practice: Working with Lists - Solution
  • Outputting Conditional Content
  • Adding Conditional Return Statements
  • Time to Practice: Conditional Content - Problem
  • Time to Practice: Conditional Content - Solution
  • Demo App: Adding a Chart
  • Adding Dynamic Styles

Styling React Components

  • Setting Dynamic Inline Styles
  • Setting CSS Classes Dynamically
  • Introducing Styled Components
  • Styled Components and Dynamic Props
  • Styled Components and Media Queries
  • Using CSS Modules
  • Dynamic Styles with CSS Modules

Debugging React Apps

  • Understanding React Error Messages
  • Analyzing Code Flow and Warnings
  • Working with Breakpoints
  • Using the React DevTools

A Complete Practice Project

  • Adding a "User" Component
  • Adding a Reusable "Card" Component
  • Adding a Reusable "Button" Component
  • Managing the User Input State
  • Adding Validation and Resetting Logic
  • Adding a User List Component
  • Managing a List of Users Through State
  • Adding the "ErrorModal" Component
  • Managing the Error State

Working with Fragments, Portals, and "Refs"

  • JSX Limitations and Workarounds
  • Creating a Wrapper Component
  • React Fragments
  • Introducing React Portals
  • Working with Portals
  • Working with "refs"
  • Controlled Versus Uncontrolled Components

Handling Side Effects, Using Reducers, and Using the Context API

  • What are "Side Effects" and Introducing useEffect()
  • Using the useEffect() Hook
  • useEffect() and Dependencies
  • Using the useEffect() Cleanup Function
  • useEffect() Summary
  • Introducing useReducer() and Reducers in General
  • Using the useReducer() Hook
  • useReducer() and useEffect()
  • useReducer() Versus useState() for State Management
  • Introducing React Context
  • Using the React Context API
  • Tapping into Context with the useContext() Hook
  • Making Context Dynamic
  • Building and Using a Custom Context Provider Component
  • React Context Limitations
  • Learning the "Rules of Hooks"
  • Refactoring an Input Component
  • Diving into "Forward Refs"

Building a Food Order App

  • Starting Setup
  • Adding a "Header" Component
  • Adding the "Cart" Button Component
  • Adding a "Meals" Component
  • Adding Individual Meal Items and Displaying Them
  • Adding a Form
  • Working on the "Shopping Cart" Component
  • Adding a Modal via a React Portal
  • Managing Cart and Modal State
  • Adding a Cart Context
  • Using the Context
  • Adding a Cart Reducer
  • Working with Refs and Forward Refs
  • Outputting Cart Items
  • Working on a More Complex Reducer Logic
  • Making Items Removable
  • Using the useEffect() Hook

React and Optimization Techniques

  • How React Really Works
  • Component Updates in Action
  • A r Look at Child Component Re-Evaluation
  • Preventing Unnecessary Re-Evaluations with React.memo()
  • Preventing Function Recreation with useCallback()
  • useCallback() and its Dependencies
  • A First Summary
  • A r Look at State and Components
  • Understanding State Scheduling and Batching
  • Optimizing with useMemo()

Class-Based Components

  • What and Why
  • Adding the First Class-Based Component
  • Working with State and Events
  • The Component Lifecycle (Class-Based Components Only)
  • Lifecycle Methods in Action
  • Class-Based Components and Context
  • Class-based versus Functional Components: A Summary
  • Introducing Error Boundaries

Sending HTTP Requests

  • How to Connect to a Database
  • Our Starting App and Backend
  • Sending a GET Request
  • Using async/await
  • Handling Loading and Data States
  • Handling HTTP Errors
  • Using useEffect() for Requests
  • Preparing the Project for the Next Steps
  • Sending a POST Request

Building Custom React Hooks

  • What are "Custom Hooks"?
  • Creating a Custom React Hook Function
  • Using Custom Hooks
  • Configuring Custom Hooks
  • Onwards to a More Realistic Example
  • Building a Custom HTTP Hook
  • Using the Custom HTTP Hook
  • Adjusting the Custom Hook Logic
  • Using the Custom Hook in More Components

Working with Forms and User Input

  • Our Starting Setup
  • What's so Complex about Forms?
  • Dealing with Form Submission and Getting User Input Values
  • Adding Basic Validation
  • Providing Validation Feedback
  • Handling the "was touched" State
  • React to Lost Focus
  • Refactoring and Deriving States
  • Managing the Overall Form Validity
  • Time to Practice: Forms - Problem
  • Time to Practice: Forms - Solution
  • Adding a Custom Input Hook
  • Reusing the Custom Hook
  • Applying Our Hook and Knowledge to a New Form
  • Using useReducer()

Adding HTTP and Forms to the Food Order App

  • Moving "Meals" Data to the Backend
  • Fetching Meals via HTTP
  • Handling the Loading State
  • Handling Errors
  • Adding A Checkout Form
  • Reading Form Values
  • Adding Form Validation
  • Submitting and Sending Cart Data
  • Adding Better User Feedback

Diving into Redux

  • Another Look at State in React Apps
  • Redux versus React Context
  • How Redux Works
  • Exploring the Core Redux Concepts
  • More Redux Basics
  • Preparing a New Project
  • Creating a Redux Store for React
  • Providing the Store
  • Using Redux Data in React Components
  • Dispatching Actions from Inside Components
  • Redux with Class-Based Components
  • Attaching Payloads to Actions
  • Working with Multiple State Properties
  • How to Work with Redux State Correctly
  • Redux Challenges and Introducing Redux Toolkit
  • Adding State Slices
  • Connecting Redux Toolkit State
  • Migrating Everything to Redux Toolkit
  • Working with Multiple Slices
  • Reading and Dispatching from a New Slice
  • Splitting Our Code

Advanced Redux

  • Redux and Side Effects (and Asynchronous Code)
  • Refresher/Practice: Part 1
  • Refresher/Practice: Part 2
  • Redux and Async Code
  • Frontend Code Versus Backend Code
  • Where to Put Our Logic
  • Using useEffect() with Redux
  • Handling HTTP States and Feedback with Redux
  • Using an Action Creator Thunk
  • Getting Started with Fetching Data
  • Finalizing the Fetching Logic
  • Exploring the Redux DevTools

Building a Multi-Page SPA with React Router

  • What is Routing and Why?
  • Installing React Router
  • Defining and Using Routes
  • Working with Links
  • Using NavLinks
  • Adding Dynamic Routes with Params
  • Extracting Route Params
  • Using "Switch" and "exact" for Configuring Routes
  • Working with Nested Routes
  • Redirecting the User
  • Time to Practice: Onwards to a New Project
  • Practice Redirecting and Extracting Params
  • Practicing Nested Routes
  • Adding a Layout Wrapper Component
  • Adding Dummy Data and More Content
  • Outputting Data on the "Details" Page
  • Adding a "Not Found" Page
  • Implementing Programmatic (Imperative) Navigation
  • Preventing Possibly Unwanted Route Transitions with the "Prompt" Component
  • Working with Query Parameters
  • Getting Creative with Nested Routes
  • Writing More Flexible Routing Code
  • Sending and Getting Quote Data via HTTP
  • Adding the "Comments" Feature
  • Upgrading to React Router v6

Deploying React Apps

  • Deployment Steps
  • Adding Lazy Loading
  • Building the Code for Production
  • Getting Started with Deployment (Uploading Files)
  • Exploring Routing Issues and Finishing Deployment

Authentication

  • What, How, and Why?
  • Starting Setup and First Steps
  • Adding User Signup
  • Showing Feedback to the User
  • Adding User Login
  • Managing the Auth State with Context
  • Using the Token for Requests to Protected Resources
  • Redirecting the User
  • Adding Logout
  • Protecting Frontend Pages
  • Persisting the User Authentication Status
  • Adding Auto-Logout
  • Finishing Steps

An Introduction to Next.js

  • What is NextJS?
  • Key Feature 1: Built-In Server-Side Rendering (Improved SEO)
  • Key Feature 2: Simplified Routing with File-Based Routing
  • Key Feature 3: Build Fullstack Apps
  • Creating a New Next.js Project and App
  • Analyzing the Created Project
  • Adding First Pages
  • Adding Nested Paths and Pages (Nested Routes)
  • Creating Dynamic Pages (with Parameters)
  • Extracting Dynamic Parameter Values
  • Linking Between Pages
  • Onwards to a Bigger Project
  • Preparing the Project Pages
  • Outputting a List of Meetups
  • Adding the New Meetup Form
  • The "_app.js" File and Layout Wrapper
  • Using Programmatic (Imperative) Navigation
  • Adding Custom Components and CSS Modules
  • How Pre-Rendering Works and Which Problem We Face
  • Data Fetching for Static Pages
  • Static Site Generation (SSG)
  • Exploring Server-side Rendering (SSR) with "getServerSideProps"
  • Working with Params for SSG Data Fetching
  • Preparing Paths with "getStaticPaths" and Working with Fallback Pages
  • Introducing API Routes
  • Working with MongoDB
  • Sending HTTP Requests to Our API Routes
  • Getting Data from the Database
  • Getting Meetup Details Data and Preparing Pages
  • Adding "head" Metadata
  • Deploying Next.js Projects
  • Using Fallback Pages and Redeploying

Animating React Apps

  • Preparing the Demo Project
  • Using CSS Transitions
  • Using CSS Animations
  • CSS Transition and Animations Limitations
  • Using ReactTransitionGroup
  • Using the Transition Component
  • Wrapping the Transition Component
  • Animation Timings
  • Transition Events
  • The CSSTransition Component
  • Customizing CSS Classnames
  • Animating Lists
  • Alternative Animation Packages

Replacing Redux with React Hooks

  • Starting Project and Why You Would Replace Redux
  • Alternative: Using the Context API
  • Toggling Favorites with the Context API
  • Context API Summary
  • Getting Started with a Custom Hook as a Store
  • Finishing the Store Hook
  • Creating a Concrete Store
  • Using the Custom Store
  • Custom Hook Store Summary
  • Optimizing the Custom Hook Store

Testing React Apps

  • What and Why?
  • Understanding Different Kinds of Tests
  • What to Test and How to Test
  • Understanding the Technical Setup and Involved Tools
  • Running the First Test
  • Writing Our First Test
  • Grouping Tests Together with Test Suites
  • Testing User Interaction and State
  • Testing Connected Components
  • Testing Asynchronous Code
  • Working with Mocks

React and TypeScript

  • What and Why?
  • Installing and Using TypeScript
  • Exploring the Base Types
  • Working with Array and Object Types
  • Understanding Type Inference
  • Using Union Types
  • Understanding Type Aliases
  • Functions and Function Types
  • Diving into Generics
  • Creating a React + TypeScript Project
  • Working with Components and TypeScript
  • Working with Props and TypeScript
  • Adding a Data Model
  • Time to Practice: Exercise Time!
  • Form Submissions in TypeScript Projects
  • Working with refs and useRef()
  • Working with "Function Props"
  • Managing State and TypeScript
  • Adding Styling
  • Time to Practice: Removing a Todo
  • The Context API and TypeScript
  • Exploring tsconfig.json

React Hooks Introduction and Summary

  • What are React Hooks?
  • The Starting Project
  • Getting Started with useState()
  • More on useState() and State Updating
  • Array Destructuring
  • Multiple States
  • Rules of Hooks
  • Passing State Data Across Components
  • Time to Practice: Hooks Basics - Problem
  • Time to Practice: Hooks Basics - Solution
  • Sending HTTP Requests
  • useEffect() and Loading Data
  • Understanding useEffect() Dependencies
  • More on useEffect()
  • What's useCallback()?
  • Working with Refs and useRef()
  • Cleaning Up with useEffect()
  • Deleting Ingredients
  • Loading Errors and State Batching
  • Understanding useReducer()
  • Using useReducer() for the HTTP State
  • Working with useContext()
  • Performance Optimizations with useMemo()
  • Getting Started with Custom Hooks
  • Sharing Data Between Custom Hooks and Components
  • Using the Custom Hook

React Summary and Core Feature Walkthrough

  • What is React?
  • Why React?
  • Building SPAs (Single-Page Applications)
  • React Alternatives
  • Creating a React Project
  • Setting Up a Code Editor
  • Diving into the Created Project
  • How React Works and Understanding Components
  • More Component Work and Styling with CSS Classes
  • Building and Reusing Another Component
  • Working with "props" and Dynamic Content
  • Handling Events
  • Adding More Components
  • Introducing State
  • Working with "Event Props" (Passing Function as Props)
  • Adding Routing
  • Adding Links and Navigation
  • Styling with CSS Modules
  • Outputting Lists of Data
  • Adding More React Components
  • Building Wrapper Components with props.children
  • Adding a Form
  • Getting User Input and Handling Form Submission
  • Preparing the App for HTTP
  • Sending a POST Request
  • Navigating Programmatically
  • Getting Started with Fetching Data
  • Using the useEffect() Hook
  • Introducing React Context
  • Context Logic and Different Ways of Updating State
  • Using Context in Components
  • More Context Usage

Apply for certification

https://www.vskills.in/certification/web-development/reactjs-certification

 For Support