Sobes.tech
Middle

Milliste hookidega olete töötanud funktsionaalsetes komponentides? Milline oli kõige ebatavalisem?

sobes.tech AI

Vastus AI-lt

Reacti funktsionaalsetes komponentides kasutatakse sageli järgmisi hook'e:

  • useState — oleku haldamiseks.
  • useEffect — kõrvaltoimete (päringud, tellimused) jaoks.
  • useContext — konteksti kasutamiseks.
  • useRef — muutuvate väärtuste salvestamiseks ja DOM-ile juurdepääsuks.
  • useMemo ja useCallback — jõudluse optimeerimiseks.

Kõige ebatavalisem hook, millega olen töötanud, võib olla useImperativeHandle. See võimaldab konfigureerida eksemplari, mis on kättesaadav vanemkomponendile ref kaudu. See on kasulik, kui soovite kontrollida, millised meetodid või omadused on väljast kättesaadavad, eriti DOM-elementide või kolmanda osapoole teekide ümbristega töötades.

Näide useImperativeHandle kasutamisest:

import React, { useImperativeHandle, forwardRef, useRef } from 'react';

const FancyInput = forwardRef((props, ref) => {
  const inputRef = useRef();

  useImperativeHandle(ref, () => ({
    focus: () => {
      inputRef.current.focus();
    }
  }));

  return <input ref={inputRef} {...props} />;
});

// Vanemkomponent võib kutsuda välja meetodi focus:
// const ref = React.createRef();
// <FancyInput ref={ref} />
// ref.current.focus();