Sobes.tech
Middle

Маслиҳат диҳед, ки чӣ корҳо бо hook useEffect кардан мумкин аст, ғайр аз иҷрои дархостҳо ба сервер.

sobes.tech AI

Ҷавоб аз AI

  • Идорагироии ҳолати сарлавҳаи саҳифа (document.title).

  • Абонат ва бекор кардани обуна ба ҳодисаҳои браузер (масалан, тағирёбии андозаи тиреза, кликҳо берун аз унсур):

    useEffect(() => {
      const handleResize = () => {
        console.log('Андозаи тиреза тағир ёфт');
      };
      window.addEventListener('resize', handleResize);
    
      return () => {
        window.removeEventListener('resize', handleResize);
      };
    }, []); // Листи холӣ: таъсир як бор дар монтаж ва тоза дар демонт.
    
  • Кор бо захираҳои маҳаллӣ (хониш/навишт):

    useEffect(() => {
      const savedValue = localStorage.getItem('myInputValue');
      if (savedValue) {
        setInputValue(savedValue); // Манзур аст, ки ҳолати inputValue ва функсияи setInputValue вуҷуд дорад
      }
    }, []); // бор кардани арзиш дар монтаж.
    
    useEffect(() => {
      localStorage.setItem('myInputValue', inputValue); // нигоҳ доштан дар тағирёбии inputValue.
    }, [inputValue]); // вобастагӣ аз inputValue.
    
  • Инициализатсияи китобхонаҳо ё компонентҳои хориҷӣ.

  • Танзим ва тозакунӣ кардани таймерҳо (setTimeout, setInterval):

    useEffect(() => {
      const timerId = setInterval(() => {
        console.log('Таймер кор мекунад');
      }, 1000);
    
      return () => {
        clearInterval(timerId); // тоза кардани интервал дар демонт.
      };
    }, []);
    
  • Назорат кардани тағирот дар props ё ҳолат ва иҷрои амалҳо дар посух.

  • Тамаркуз ба унсур дар монтажи компонент:

    useEffect(() => {
      inputRef.current.focus(); // Манзур аст, ки ref inputRef вуҷуд дорад
    }, []);