Кадре · январь 2025

Тех собес на middle-senior Frontend Разработчик в Кадре

middle-senior Тех собес 1 задача

1. Задача: Отрефакторить React компонент

import React, { useState, useEffect } from 'react';

const fetchRandomNumber = () => Promise.resolve(Math.random());

export function App(props) {
  const [number, setNumber] = useState();
  const [scroll, setScroll] = useState();

  useEffect(async () => {
    setNumber(await fetchRandomNumber());

    window.addEventListener('scroll', () => setScroll(window.scrollY));

    return () =>
      window.removeEventListener('scroll', () => setScroll(window.scrollY));
  });

  return (
    <div>
      <div> Number: {number} </div>
      <div> Scroll: {scroll} </div>
    </div>
  );
}