Sobes.tech
Middle

Sa kojim hook-ovima ste radili u funkcionalnim komponentama? Koji je bio najneobičniji?

sobes.tech АИ

Одговор од АИ

U funkcionalnim komponentama React često se koriste sledeći hookovi:

  • useState — za upravljanje stanjem.
  • useEffect — za sporedne efekte (zahtevi, pretplate).
  • useContext — za pristup kontekstu.
  • useRef — za skladištenje promenljivih i pristup DOM-u.
  • useMemo i useCallback — za optimizaciju performansi.

Najneobičniji hook s kojim sam radio može biti useImperativeHandle. Omogućava konfiguraciju instance koja će biti dostupna roditeljskom komponentu putem ref. Ovo je korisno kada je potrebno kontrolisati koje metode ili svojstva su dostupna spolja, posebno pri radu sa omotima nad DOM elementima ili bibliotekama treće strane.

Primer korišćenja useImperativeHandle:

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} />;
});

// Roditeljski komponent može pozvati metodu focus:
// const ref = React.createRef();
// <FancyInput ref={ref} />
// ref.current.focus();