प्रतिक्रिया ट्यूटोरियल

रिएक्ट होम प्रतिक्रिया परिचय प्रतिक्रिया आरंभ करें प्रतिक्रिया ES6 रिएक्ट रेंडर एचटीएमएल प्रतिक्रिया JSX प्रतिक्रिया घटक प्रतिक्रिया वर्ग प्रतिक्रिया सहारा प्रतिक्रिया घटनाक्रम प्रतिक्रिया सशर्त प्रतिक्रिया सूचियाँ प्रतिक्रिया प्रपत्र प्रतिक्रिया राउटर प्रतिक्रिया ज्ञापन प्रतिक्रिया सीएसएस स्टाइलिंग प्रतिक्रिया सास स्टाइलिंग

प्रतिक्रिया हुक

एक हुक क्या है? राज्य का उपयोग करें उपयोग प्रभाव उपयोग प्रसंग उपयोग रेफरी रेड्यूसर का उपयोग करें कॉलबैक का उपयोग करें मेमो का उपयोग करें कस्टम हुक

प्रतिक्रिया अभ्यास

प्रतिक्रिया प्रश्नोत्तरी प्रतिक्रिया अभ्यास प्रतिक्रिया प्रमाण पत्र

प्रतिक्रिया उपयोगसंदर्भ हुक


प्रतिक्रिया प्रसंग

प्रतिक्रिया प्रसंग विश्व स्तर पर राज्य का प्रबंधन करने का एक तरीका है।

इसका उपयोग हुक के साथ अकेले useStateकी तुलना में अधिक आसानी से गहरे नेस्टेड घटकों के बीच राज्य साझा करने के लिए किया जा सकता है।useState


समस्या

राज्य को स्टैक में उच्चतम मूल घटक द्वारा रखा जाना चाहिए जिसके लिए राज्य तक पहुंच की आवश्यकता होती है।

उदाहरण के लिए, हमारे पास कई नेस्टेड घटक हैं। स्टैक के ऊपर और नीचे के घटक को राज्य तक पहुंच की आवश्यकता होती है।

संदर्भ के बिना ऐसा करने के लिए, हमें प्रत्येक नेस्टेड घटक के माध्यम से राज्य को "प्रोप" के रूप में पारित करने की आवश्यकता होगी। इसे "प्रोप ड्रिलिंग" कहा जाता है।

उदाहरण:

नेस्टेड घटकों के माध्यम से "प्रॉप्स" पास करना:

import { useState } from "react";
import ReactDOM from "react-dom";

function Component1() {
  const [user, setUser] = useState("Jesse Hall");

  return (
    <>
      <h1>{`Hello ${user}!`}</h1>
      <Component2 user={user} />
    </>
  );
}

function Component2({ user }) {
  return (
    <>
      <h1>Component 2</h1>
      <Component3 user={user} />
    </>
  );
}

function Component3({ user }) {
  return (
    <>
      <h1>Component 3</h1>
      <Component4 user={user} />
    </>
  );
}

function Component4({ user }) {
  return (
    <>
      <h1>Component 4</h1>
      <Component5 user={user} />
    </>
  );
}

function Component5({ user }) {
  return (
    <>
      <h1>Component 5</h1>
      <h2>{`Hello ${user} again!`}</h2>
    </>
  );
}

ReactDOM.render(<Component1 />, document.getElementById("root"));

भले ही घटक 2-4 को राज्य की आवश्यकता नहीं थी, फिर भी उन्हें राज्य को पारित करना पड़ा ताकि यह घटक 5 तक पहुंच सके।


w3schools CERTIFIED . 2022

प्रमाणन हासिल करें!

रिएक्ट मॉड्यूल को पूरा करें, अभ्यास करें, परीक्षा दें और w3schools प्रमाणित बनें !!

$95 नामांकन

समाधान

समाधान संदर्भ बनाना है।

प्रसंग बनाएँ

संदर्भ बनाने के लिए, आपको इसे आयात createContextऔर प्रारंभ करना होगा:

import { useState, createContext } from "react";
import ReactDOM from "react-dom";

const UserContext = createContext()

आगे हम उन घटकों के पेड़ को लपेटने के लिए संदर्भ प्रदाता का उपयोग करेंगे जिन्हें राज्य संदर्भ की आवश्यकता है।

प्रसंग प्रदाता

संदर्भ प्रदाता में बाल घटकों को लपेटें और राज्य मूल्य की आपूर्ति करें।

function Component1() {
  const [user, setUser] = useState("Jesse Hall");

  return (
    <UserContext.Provider value={user}>
      <h1>{`Hello ${user}!`}</h1>
      <Component2 user={user} />
    </UserContext.Provider>
  );
}

अब, इस पेड़ के सभी घटकों के पास उपयोगकर्ता संदर्भ तक पहुंच होगी।

useContextहुक का प्रयोग करें

useContextचाइल्ड कंपोनेंट में कॉन्टेक्स्ट का उपयोग करने के लिए, हमें हुक का उपयोग करके इसे एक्सेस करना होगा ।

सबसे पहले, useContextआयात विवरण में शामिल करें:

import { useState, createContext, useContext } from "react";

फिर आप सभी घटकों में उपयोगकर्ता संदर्भ तक पहुंच सकते हैं:

function Component5() {
  const user = useContext(UserContext);

  return (
    <>
      <h1>Component 5</h1>
      <h2>{`Hello ${user} again!`}</h2>
    </>
  );
}

पूरा उदाहरण

उदाहरण:

प्रतिक्रिया प्रसंग का उपयोग करके पूरा उदाहरण यहां दिया गया है:

import { useState, createContext, useContext } from "react";
import ReactDOM from "react-dom";

const UserContext = createContext();

function Component1() {
  const [user, setUser] = useState("Jesse Hall");

  return (
    <UserContext.Provider value={user}>
      <h1>{`Hello ${user}!`}</h1>
      <Component2 user={user} />
    </UserContext.Provider>
  );
}

function Component2() {
  return (
    <>
      <h1>Component 2</h1>
      <Component3 />
    </>
  );
}

function Component3() {
  return (
    <>
      <h1>Component 3</h1>
      <Component4 />
    </>
  );
}

function Component4() {
  return (
    <>
      <h1>Component 4</h1>
      <Component5 />
    </>
  );
}

function Component5() {
  const user = useContext(UserContext);

  return (
    <>
      <h1>Component 5</h1>
      <h2>{`Hello ${user} again!`}</h2>
    </>
  );
}

ReactDOM.render(<Component1 />, document.getElementById("root"));