React Basics - Class 3

Dear Sciaku Learner you are not logged in or not enrolled in this course.

Please Click on login or enroll now button.

If you have any query feel free to chat us!

Happy Coding! Happy Learning!

Lecture 51 :- React Basics - Class 3

In "React Basics - Class 3," 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 Hooks, forms, and component lifecycle methods.

Let's dive into the new concepts:

Step 1: React Hooks

React Hooks are functions that allow you to use state and other React features in functional components, without the need to use class components. Hooks provide a simpler and more concise way to manage state and side effects in your components.

Here are some commonly used React Hooks:

  • useState: Allows you to add state to functional components.
  • useEffect: Allows you to perform side effects in functional components (e.g., data fetching, subscriptions, etc.).
  • useContext: Allows you to access the nearest context value in functional components.
  • useReducer: Allows you to use a reducer function to manage state in functional components.
  • useCallback and useMemo: Help optimize performance by memoizing functions and values.

Let's rewrite the Counter component from the previous class using useState Hook.

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>      <button onClick={incrementCount}>Increment</button>      <button onClick={resetCount}>Reset</button>    </div>  ); } export default Counter;

Step 2: Forms

React makes it easy to handle form inputs and capture user input data. You can use the useState Hook to manage form state and the onChange event to handle user input.

Let's create a simple form component that captures user input and displays it.

jsxCopy code

import React, { useState } from 'react'; function Form() {  const [inputValue, setInputValue] = useState('');  const handleChange = (e) => {    setInputValue(e.target.value);  };  return (    <div>      <input type="text" value={inputValue} onChange={handleChange} />      <p>You typed: {inputValue}</p>    </div>  ); } export default Form;

Step 3: Component Lifecycle Methods

In class components, you have access to component lifecycle methods, such as componentDidMount, componentDidUpdate, and componentWillUnmount. These methods allow you to execute code at different stages of a component's life.

In functional components, you can use the useEffect Hook to achieve the same behavior. useEffect combines the functionality of componentDidMount, componentDidUpdate, and componentWillUnmount.

Let's see how to use useEffect Hook.

jsxCopy code

import React, { useState, useEffect } from 'react'; function Timer() {  const [seconds, setSeconds] = useState(0);  useEffect(() => {    const interval = setInterval(() => {      setSeconds((prevSeconds) => prevSeconds + 1);    }, 1000);    return () => {      clearInterval(interval);    };  }, []);  return (    <div>      <h2>Timer: {seconds} seconds</h2>    </div>  ); } export default Timer;

In this example, the useEffect Hook runs after the component is mounted (similar to componentDidMount). It starts an interval that updates the seconds state every second. Additionally, we've returned a cleanup function from useEffect, which will clear the interval when the component is unmounted (similar to componentWillUnmount).

Step 4: Using Components Together

Now that we've created separate components for React Hooks, forms, and lifecycle methods, let's use them in the App.js.

jsxCopy code

import React from 'react'; import Welcome from './Welcome'; import Counter from './Counter'; import Form from './Form'; import Timer from './Timer'; function App() {  return (    <div>      <h1>Hello, React!</h1>      <Welcome name="React App" />      <Counter />      <Form />      <Timer />    </div>  ); } export default App;

Congratulations! You've completed the third class of React Basics. You've learned about React Hooks, forms, and component lifecycle methods, which are essential concepts in building robust and dynamic React applications.

React is a powerful library that allows you to create highly interactive and scalable 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!

13. React Basics

Comments: 21

profile
@zubaid.zu
9-May-2024, 02:42 AM

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

profile
@admin79
10-May-2024, 10:29 PM

Now your Paypal payment is accepted and your course is activated successfully. Please leave your valuable feedback.

profile
@anandwising
12-Mar-2024, 04:05 PM

Why i am being asked for payment if i am already enrolled in the course

profile
@admin79
12-Mar-2024, 05:22 PM

Dear anand, your payment is now updated check your course, apologize for several delays. Please leave your valuable feedback.

profile
@anandwising
12-Mar-2024, 08:33 PM

thanks its working now

profile
@Megha
22-Feb-2024, 11:02 PM

hello ,I have a doubt

profile
@akshaykumrawat99
22-Feb-2024, 10:56 PM

hello i have a doubt

profile
@rajnireddyatr
3-Feb-2024, 12:08 AM

hi

profile
@talha.developments
18-Jan-2024, 09:34 PM

I'm paying through my Card, but it giving an error. why ? how we can purchase a course in Pakistan. Paypal is banned here

profile
@aryangrg020
17-Jan-2024, 10:25 PM

can we download the videos

profile
@Krishanpal
14-Jan-2024, 08:12 PM

i done my payment for mern stack development love babbar but cant acces to course kindly give me access

profile
@sciaku1
17-Jan-2024, 12:28 PM

Dear Krishnapal your payment is already accepted go and check back.

profile
@shivanshgautam220
10-Jan-2024, 04:57 PM

Why i am being asked for payment if i am already enrolled in the course

profile
@sciaku1
11-Jan-2024, 03:18 PM

Dear Shivansh, if you already done your payment then contact us on our official Email id [email protected] or reply here.

profile
@p8354046
7-Jan-2024, 03:47 PM

Why i am being asked for payment if i am already enrolled in the course

profile
@sciaku1
11-Jan-2024, 03:19 PM

Dear p8354046, if you already done your payment then contact us on our official Email id [email protected] or reply here.

profile
@myidontablet
30-Dec-2023, 04:28 PM

Why i am being asked for payment if i am already enrolled in the course

profile
@sciaku1
6-Jan-2024, 01:42 AM

Dear, Don't worry now your problem is solved check your id.

profile
@duabhi911
16-Nov-2023, 02:03 AM

Why i am being asked for payment if i am already enrolled in the course

profile
@harshp.cs.22
23-Dec-2023, 11:40 AM

Yes bro

profile
@myidontablet
30-Dec-2023, 04:28 PM

I'm facing same issue

profile
@sciaku1
6-Jan-2024, 01:43 AM

Dear, Don't worry now your problem is solved check your id.

profile
@lenientharsh
31-Oct-2023, 10:56 AM

i want debit card option

profile
@lenientharsh
31-Oct-2023, 10:51 AM

how can i assure that this is not scam?

profile
@jainarin416
2-Nov-2023, 12:37 AM

i have same doubt is this website real or a fraud

profile
@sciaku1
6-Jan-2024, 01:45 AM

No its not any fraud. its genuine if you need any proof please contact us via email.

profile
@sciaku1
6-Jan-2024, 01:44 AM

No it's not any scam, its genuine if you need any proof please contact us via email.

profile
@hydrarishabh9
21-Oct-2023, 11:47 PM

how to do payment ?

profile
@sciaku1
30-Oct-2023, 05:34 PM

Click on Watch now button then click next video then payment option is showing

profile
@minhajakram440
18-Oct-2023, 11:18 PM

i am unable to access the video even i have already completed my payment .

profile
@aeromusgyan
21-Oct-2023, 01:17 AM

Your problem is solved

profile
@saklyi70
30-Sep-2023, 11:02 AM

plz add codes lecture wise ! it wold be great and helpful also

profile
@sciaku1
6-Jan-2024, 01:47 AM

now we have added starter package in lecture 2nd, go now and download it.

profile
@thomasroka31
29-Sep-2023, 04:05 PM

how to view this one

profile
@jitendrakrverma02
23-Sep-2023, 03:57 PM

Why video not play

profile
@sciaku1
6-Jan-2024, 01:47 AM

Now it's working.

profile
@9035praveen
2-Sep-2023, 12:12 PM

Thank you for the access of the videos. It would be greatful if I could no the way to download the videos

profile
@mohammedunaismdr
25-Sep-2023, 11:54 AM

Use idm to download

profile
@mishraprajjwal295
13-Oct-2023, 11:07 PM

ok

profile
@rahulkumarbaraswal30
4-Nov-2023, 01:32 PM

Hello bro can you share course with me?

profile
@bicky
1-Sep-2023, 05:42 PM

hello everyone

Frequently Asked Questions (FAQs)

How do I register on Sciaku.com?
How can I enroll in a course on Sciaku.com?
Are there free courses available on Sciaku.com?
How do I purchase a paid course on Sciaku.com?
What payment methods are accepted on Sciaku.com?
How will I access the course content after purchasing a course?
How long do I have access to a purchased course on Sciaku.com?
How do I contact the admin for assistance or support?
Can I get a refund for a course I've purchased?
How does the admin grant access to a course after payment?