Хуки в React — введение

Jan 21 2023
Хуки были добавлены в React в версии 16.8 и позволили использовать состояние в функциональных компонентах React.
Реагировать логотип

Хуки были добавлены в React в версии 16.8 и позволили использовать состояние в функциональных компонентах React. Ранее только компоненты класса имели доступ к состоянию. Это новое добавление хуков упростило работу с состоянием в реакции.

//handling state in React class component
import React from "react"

class App extends React.Component {

  constructor(props) {    
    super(props);    
    this.state = {name: "Thushitha"};  
  }

  render() {
    return (
      <div>
        <h1>Hello, world!</h1>
        <p>I'm {this.state.name}</p>      
      </div>
    );
  }
}

export default App;

import {useState} from 'react'

  1. Их можно использовать только в функциональных компонентах React.
  2. Их можно вызывать только в верхней части компонентов.
  3. //importing required hook from react
    import {useState} from 'react'
    
    export default function App() {
    
      // correctly calling useState hook
      const [name,setName]=useState("Max")
    
      if(name==="Max"){
        //wrong usage as this hook is called conditionally. The hooks have to be 
        //called in the same order in every rendering
        const [school,setSchool]=useState("ABC School");
      }else{
        const [college,setCollege]=useState("XYZ College");
      }
    
      return (
        <div>
          <h1>Hello World!</h1>
        </div>
      );
    }