Knowledge in react js

React js notes for students.

Contents About ................................................................................................................................................................................... 1 Chapter 1: Getting started with React ............................................................................................................... 2 Section 1.1: What is ReactJS? ........................................................................................................................................ 2 Section 1.2: Installation or Setup .................................................................................................................................. 3 Section 1.3: Hello World with Stateless Functions ....................................................................................................... 4 Section 1.4: Absolute Basics of Creating Reusable Components ............................................................................. 5 Section 1.5: Create React App ...................................................................................................................................... 6 Section 1.6: Hello World ................................................................................................................................................. 7 Section 1.7: Hello World Component ........................................................................................................................... 8 Chapter 2: Components ........................................................................................................................................... 11 Section 2.1: Creating Components ............................................................................................................................. 11 Section 2.2: Basic Component ................................................................................................................................... 13 Section 2.3: Nesting Components .............................................................................................................................. 14 Section 2.4: Props ........................................................................................................................................................ 16 Section 2.5: Component states - Dynamic user-interface ...................................................................................... 17 Section 2.6: Variations of Stateless Functional Components ................................................................................. 19 Section 2.7: setState pitfalls ....................................................................................................................................... 20 Chapter 3: Using ReactJS with TypeScript .................................................................................................... 22 Section 3.1: ReactJS component written in TypeScript ........................................................................................... 22 Section 3.2: Installation and Setup ............................................................................................................................ 22 Section 3.3: Stateless React Components in TypeScript ......................................................................................... 23 Section 3.4: Stateless and property-less Components ............................................................................................ 24 Chapter 4: State in React ...................................................................................................................................... 25 Section 4.1: Basic State ............................................................................................................................................... 25 Section 4.2: Common Antipattern ............................................................................................................................. 25 Section 4.3: setState() ................................................................................................................................................. 26 Section 4.4: State, Events And Managed Controls ................................................................................................... 28 Chapter 5: Props in React ...................................................................................................................................... 30 Section 5.1: Introduction .............................................................................................................................................. 30 Section 5.2: Default props .......................................................................................................................................... 30 Section 5.3: PropTypes ............................................................................................................................................... 31 Section 5.4: Passing down props using spread operator ....................................................................................... 32 Section 5.5: Props.children and component composition ....................................................................................... 33 Section 5.6: Detecting the type of Children components ........................................................................................ 34 Chapter 6: React Component Lifecycle .......................................................................................................... 35 Section 6.1: Component Creation ............................................................................................................................... 35 Section 6.2: Component Removal ............................................................................................................................. 37 Section 6.3: Component Update ................................................................................................................................ 38 Section 6.4: Lifecycle method call in dierent states .............................................................................................. 39 Section 6.5: React Component Container ................................................................................................................. 40 Chapter 7: Forms and User Input ....................................................................................................................... 42 Section 7.1: Controlled Components .......................................................................................................................... 42 Section 7.2: Uncontrolled Components ..................................................................................................................... 42 Chapter 8: React Boilerplate [React + Babel + Webpack] ................................................................... 44 Section 8.1: react-starter project ............................................................................................................................... 44 Section 8.2: Setting up the project ............................................................................................................................. 45Chapter 9: Using ReactJS with jQuery ............................................................................................................. 48 Section 9.1: ReactJS with jQuery ................................................................................................................................ 48 Chapter 10: React Routing ..................................................................................................................................... 50 Section 10.1: Example Routes.js file, followed by use of Router Link in component ............................................. 50 Section 10.2: React Routing Async ............................................................................................................................ 51 Chapter 11: Communicate Between Components ...................................................................................... 52 Section 11.1: Communication between Stateless Functional Components ............................................................ 52 Chapter 12: How to setup a basic webpack, react and babel environment ................................ 54 Section 12.1: How to build a pipeline for a customized "Hello world" with images ............................................... 54 Chapter 13: React.createClass vs extends React.Component ............................................................. 58 Section 13.1: Create React Component ...................................................................................................................... 58 Section 13.2: "this" Context .......................................................................................................................................... 58 Section 13.3: Declare Default Props and PropTypes ............................................................................................... 60 Section 13.4: Mixins ...................................................................................................................................................... 62 Section 13.5: Set Initial State ....................................................................................................................................... 62 Section 13.6: ES6/React “this” keyword with ajax to get data from server ........................................................... 63 Chapter 14: React AJAX call .................................................................................................................................. 65 Section 14.1: HTTP GET request .................................................................................................................................. 65 Section 14.2: HTTP GET request and looping through data ................................................................................... 66 Section 14.3: Ajax in React without a third party library - a.k.a with VanillaJS ..................................................... 66 Chapter 15: Communication Between Components .................................................................................. 68 Section 15.1: Child to Parent Components ................................................................................................................. 68 Section 15.2: Not-related Components ..................................................................................................................... 68 Section 15.3: Parent to Child Components ................................................................................................................ 69 Chapter 16: Stateless Functional Components ............................................................................................ 71 Section 16.1: Stateless Functional Component .......................................................................................................... 71 Chapter 17: Performance ........................................................................................................................................ 74 Section 17.1: Performance measurement with ReactJS .......................................................................................... 74 Section 17.2: React's di algorithm ............................................................................................................................ 74 Section 17.3: The Basics - HTML DOM vs Virtual DOM ............................................................................................ 75 Section 17.4: Tips & Tricks ........................................................................................................................................... 76 Chapter 18: Introduction to Server-Side Rendering ................................................................................. 77 Section 18.1: Rendering components ......................................................................................................................... 77 Chapter 19: Setting Up React Environment ................................................................................................... 78 Section 19.1: Simple React Component ..................................................................................................................... 78 Section 19.2: Install all dependencies ........................................................................................................................ 78 Section 19.3: Configure webpack ............................................................................................................................... 78 Section 19.4: Configure babel ..................................................................................................................................... 79 Section 19.5: HTML file to use react component ...................................................................................................... 79 Section 19.6: Transpile and bundle your component .............................................................................................. 79 Chapter 20: Using React with Flow .................................................................................................................... 80 Section 20.1: Using Flow to check prop types of stateless functional components ............................................. 80 Section 20.2: Using Flow to check prop types ......................................................................................................... 80 Chapter 21: JSX ............................................................................................................................................................ 81 Section 21.1: Props in JSX ............................................................................................................................................ 81 Section 21.2: Children in JSX ....................................................................................................................................... 82 Chapter 22: React Forms ........................................................................................................................................ 85 Section 22.1: Controlled Components ........................................................................................................................ 85Chapter 23: User interface solutions ................................................................................................................ 87 Section 23.1: Basic Pane .............................................................................................................................................. 87 Section 23.2: Panel ...................................................................................................................................................... 87 Section 23.3: Tab ......................................................................................................................................................... 88 Section 23.4: PanelGroup ............................................................................................................................................ 88 Section 23.5: Example view with `PanelGroup`s ....................................................................................................... 89 Chapter 24: Using ReactJS in Flux way ........................................................................................................... 91 Section 24.1: Data Flow ............................................................................................................................................... 91 Chapter 25: React, Webpack & TypeScript installation ......................................................................... 92 Section 25.1: webpack.config.js .................................................................................................................................. 92 Section 25.2: tsconfig.json .......................................................................................................................................... 92 Section 25.3: My First Component ............................................................................................................................. 93 Chapter 26: How and why to use keys in React .......................................................................................... 94 Section 26.1: Basic Example ........................................................................................................................................ 94 Chapter 27: Keys in react ....................................................................................................................................... 95 Section 27.1: Using the id of an element ................................................................................................................... 95 Section 27.2: Using the array index ........................................................................................................................... 95 Chapter 28: Higher Order Components .......................................................................................................... 97 Section 28.1: Higher Order Component that checks for authentication ................................................................ 97 Section 28.2: Simple Higher Order Component ....................................................................................................... 98 Chapter 29: React with Redux .............................................................................................................................. 99 Section 29.1: Using Connect ....................................................................................................................................... 99 Appendix A: Installation ......................................................................................................................................... 100 Section A.1: Simple setup .......................................................................................................................................... 100 Section A.2: Using webpack-dev-server ................................................................................................................. 101 Appendix B: React Tools ....................................................................................................................................... 103 Section B.1: Links ....................................................................................................................................................... 103 Credits ............................................................................................................................................................................ 104 You may also like ...................................................................................................................................................... 106