If you have any query feel free to chat us!
Happy Coding! Happy Learning!
In "React Basics - Class 4," we'll continue exploring more advanced React concepts and build on what we learned in the previous classes. We'll cover topics such as React Router, conditional rendering with ternary operators, and mapping data to components.
Step 1: React Router
React Router is a popular library that allows you to handle routing and navigation in a React application. It enables you to create multiple pages and switch between them without a full page reload.
Let's install React Router and set up basic routing for our application:
Install React Router:
Open your terminal and run the following command to install React Router:
bashCopy code
npm install react-router-dom
Set Up Routing:
Create a new file called
Home.js
inside thesrc
folder with the following content:jsxCopy code
import React from 'react'; function Home() { return <h2>Welcome to the Home Page!</h2>; } export default Home;
Next, create another file called
About.js
inside thesrc
folder with the following content:jsxCopy code
import React from 'react'; function About() { return <h2>About Us</h2>; } export default About;
Now, modify the
App.js
to set up routing usingreact-router-dom
:jsxCopy code
import React from 'react'; import { BrowserRouter as Router, Route, Link } from 'react-router-dom'; import Home from './Home'; import About from './About'; function App() { return ( <Router> <div> <h1>Hello, React!</h1> <nav> <ul> <li> <Link to="/">Home</Link> </li> <li> <Link to="/about">About</Link> </li> </ul> </nav> <Route exact path="/" component={Home} /> <Route path="/about" component={About} /> </div> </Router> ); } export default App;
Now, when you run the application, you'll have a basic navigation bar with links to the Home and About pages. Clicking on the links will display the corresponding components.
Step 2: Conditional Rendering with Ternary Operators
In the previous classes, we used if-else statements for conditional rendering. You can also use ternary operators to achieve the same result in a more concise way.
Let's update the
Counter
component to use ternary operators for conditional rendering.jsxCopy code
import React, { useState } from 'react'; function Counter() { const [count, setCount] = useState(0); const incrementCount = () => { setCount((prevCount) => prevCount + 1); }; const resetCount = () => { setCount(0); }; return ( <div> <h2>Count: {count}</h2> {count === 0 ? ( <p>Start counting!</p> ) : count === 10 ? ( <p>You reached 10!</p> ) : count === 20 ? ( <p>You reached 20!</p> ) : null} <button onClick={incrementCount}>Increment</button> <button onClick={resetCount}>Reset</button> </div> ); } export default Counter;
Step 3: Mapping Data to Components
In many cases, you'll receive data in the form of an array and want to render components for each item in the array. You can use the
map
function to achieve this.Let's create a simple list rendering example using an array of names.
jsxCopy code
import React from 'react'; function NameList() { const names = ['Alice', 'Bob', 'Charlie', 'David']; return ( <div> <h2>List of Names</h2> <ul> {names.map((name) => ( <li key={name}>{name}</li> ))} </ul> </div> ); } export default NameList;
Step 4: Using Components Together
Now that we've created separate components for React Router, conditional rendering, and list rendering, let's use them in the
App.js
.jsxCopy code
import React from 'react'; import { BrowserRouter as Router, Route, Link } from 'react-router-dom'; import Home from './Home'; import About from './About'; import Counter from './Counter'; import NameList from './NameList'; function App() { return ( <Router> <div> <h1>Hello, React!</h1> <nav> <ul> <li> <Link to="/">Home</Link> </li> <li> <Link to="/about">About</Link> </li> </ul> </nav> <Route exact path="/" component={Home} /> <Route path="/about" component={About} /> <Counter /> <NameList /> </div> </Router> ); } export default App;
Congratulations! You've completed the fourth class of React Basics. You've learned about React Router, conditional rendering with ternary operators, and mapping data to components.
React provides powerful tools to build dynamic and interactive user interfaces. As you continue your React journey, you can explore more advanced topics like React Context, custom hooks, and state management libraries.
Keep practicing, building more complex applications, and exploring the vast possibilities of React! Happy coding!
Comments: 24
Kindly check the lecture number 6. Lifecycle of a Change in 1. Git and Github The above lecture is not related to the course please update it ASAP Thank you
From where can I download the files which love babbar says he has uploaded on dashboard ??
I have attached the link https://github.com/lakshayk12/ANN_optimization_BTP
bro, i paid for the course, but still can't access the course. do something
Paid for the course but it still locked, can solve this problem please, when you take the payment the couse should be unlocked, evey time i have to message for any purchase
Now your Paypal payment is accepted and your course is activated successfully. Please leave your valuable feedback.
Why i am being asked for payment if i am already enrolled in the course
Dear anand, your payment is now updated check your course, apologize for several delays. Please leave your valuable feedback.
thanks its working now
hello ,I have a doubt
hello i have a doubt
hi
I'm paying through my Card, but it giving an error. why ? how we can purchase a course in Pakistan. Paypal is banned here
can we download the videos
i done my payment for mern stack development love babbar but cant acces to course kindly give me access
Dear Krishnapal your payment is already accepted go and check back.
Why i am being asked for payment if i am already enrolled in the course
Dear Shivansh, if you already done your payment then contact us on our official Email id [email protected] or reply here.
Why i am being asked for payment if i am already enrolled in the course
Dear p8354046, if you already done your payment then contact us on our official Email id [email protected] or reply here.
Why i am being asked for payment if i am already enrolled in the course
Dear, Don't worry now your problem is solved check your id.
Why i am being asked for payment if i am already enrolled in the course
Yes bro
I'm facing same issue
Dear, Don't worry now your problem is solved check your id.
i want debit card option
how can i assure that this is not scam?
i have same doubt is this website real or a fraud
No its not any fraud. its genuine if you need any proof please contact us via email.
No it's not any scam, its genuine if you need any proof please contact us via email.
how to do payment ?
Click on Watch now button then click next video then payment option is showing
i am unable to access the video even i have already completed my payment .
Your problem is solved
plz add codes lecture wise ! it wold be great and helpful also
now we have added starter package in lecture 2nd, go now and download it.
how to view this one
Why video not play
Now it's working.
Thank you for the access of the videos. It would be greatful if I could no the way to download the videos
Use idm to download
ok
Hello bro can you share course with me?
hello everyone