Выполнять код каждую секунду (Таймер)

В React есть хук useEffect(), который выполняется после создания компонента.

export function App() {

  useEffect(() => {
      // выполнять код после создания приложения
  })

  return (
    <div className="react-app">
      Приложение на React
    </div>
  );

}

В данном методе можно добавить функцию setInterval(), которая задаёт интервал выполнения указанного кода.

import { useEffect, useState } from 'react';

export function App() {
  const [seconds, setSeconds] = useState(0);

  useEffect(() => {
    // выполнять код каждую секунду
    const interval = setInterval(() => {
      setSeconds(seconds+1)
    }, 1000);

    return () => clearInterval(interval);
  });

  return (
      <p>Прошло секунд: {seconds}</p>
  );
}

Пример кода на Playcode

Раньше для данных целей использовался componentDidMount(), но сейчас он считается устаревшим, и вместо него используется хук useEffect().