برنامه نویسی

React Hooks – انجمن DEV

قلاب ویژگی react است که در React 16.8 معرفی شد و این به توسعه دهندگان اجازه می دهد تا از ویژگی های حالت و واکنش دیگر در اجزای عملکردی استفاده کنند. قبل از معرفی Hooks این ویژگی‌ها فقط در کامپوننت‌های کلاس موجود بود. Hooks راهی برای مدیریت وضعیت، مدیریت عوارض جانبی و دسترسی به روش‌های چرخه حیات در اجزای عملکردی بدون نیاز به اجزای کلاس ارائه می‌کند.

در اینجا چند قلاب پرکاربرد آورده شده است

  1. useState – این قلاب به شما این امکان را می دهد که حالت را به مولفه تابعی اضافه کنید و آن را تابع حالت کنید. useState یک متغیر حالت و یک تابع برای به روز رسانی متغیر حالت برمی گرداند.

نحو-

const [stateVariable,functionToUpdateVariable] = useState(initialValue)

const [isOpen,setIsOpen] = useState(false)
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

مثال-

import React, { useState } from 'react';

const Counter = () => {
  const [count, setCount] = useState(0);

  const incrementCount = () => {
    setCount(count + 1);
  };

  return (
    <div>
      <p>Count: {count}</p>
      <button onClick={incrementCount}>Increment</button>
    </div>
  );
};
export default Counter

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

خروجی-
اولین عکس خروجی

اسکرین شات خروجی دوم

2) useEffect – این قلاب برای کنترل عوارض جانبی در اجزای عملکردی مانند واکشی داده ها، اشتراک در رویدادها یا تغییر دستی DOM استفاده می شود. تابع فراخوانی را می پذیرد و پس از رندر شدن کامپوننت، آن را اجرا می کند.

نحو-

useEffect(callback, dependencies)
useEffect(()=>{},[dependencies])
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

مثال-

import "./App.css";
import React, { useEffect, useState } from "react";

const DataFetch = () => {
  const [data, setData] = useState([]);

  useEffect(() => {
    // Fetch data from an API
    fetch("https://jsonplaceholder.typicode.com/users")
      .then((response) => response.json())
      .then((data) => {
        setData(data);
        console.log("Data", data);
      });
  }, []);

  return (
    <div>
      <h1>Name: {data[0]?.name}</h1>
      <h1>Name: {data[1]?.name}</h1>
      <h1>Name: {data[2]?.name}</h1>
    </div>
  );
};

export default DataFetch;

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

خروجی-

خروجی useEffect

3) useContext- قلاب useContext در React به شما این امکان را می دهد که از یک زمینه در یک جزء عملکردی استفاده کنید. راهی برای دسترسی به مقدار فعلی یک زمینه ایجاد شده با استفاده از تابع ()createContext فراهم می کند.

نحو-

const value = useContext(Context);
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

مثال-

import React, { useContext } from "react";

// Create a context
const MyContext = React.createContext();

// Create a component that provides the context value
const Parent = () => {
  const contextValue = "Hello, My Name is Himanshu Baghel";

  return (
    <MyContext.Provider value={contextValue}>
      <Child />
    </MyContext.Provider>
  );
};

// Create a component that consumes the context
const Child = () => {
  // Consume the context using useContext
  const contextValue = useContext(MyContext);

  return <p>{contextValue}</p>;
};

// Render the parent component
const App = () => {
  return <Parent />;
};

export default App;
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

خروجی-

خروجی useContext

متشکرم

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا