Sobes.tech
Middle

useEffect hookidan tashqari, serverga so'rov yuborishdan tashqari nima qilish mumkinligini misollar bilan keltiring.

sobes.tech AI

AIdan javob

  • Бош саҳифа сўрови ҳолатини бошқариш (document.title).

  • Браузер воқеаларига обуна бўлиш ва ундан воз кечиш (масалан, oynaning ўлчамини ўзгартириш, элементдан ташқарида босиш):

    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); // Интервални тозалаш
      };
    }, []);
    
  • Бўлғонлар ёки ҳолат ўзгаришларини кузатиш ва уларга жавобан ҳаракатлар амалга ошириш.

  • Компонент монтаж қилинганда элементга фокус қўйиш:

    useEffect(() => {
      inputRef.current.focus(); // inputRef рефери мавжуд деб ҳисобланади
    }, []);