Sobes.tech
Middle+

C'è un componente App e un componente Rand di una libreria esterna, che visualizzano un numero casuale. Deve essere fatto in modo che ogni 3 secondi il numero casuale cambi, e venga visualizzato un contatore delle modifiche. Tutto solo nel componente App.

sobes.tech AI

Risposta dell'AI

В компоненте App можно использовать состояние и таймер, чтобы каждые 3 секунды обновлять случайное число и счётчик изменений.

Пример на React:

import React, { useState, useEffect } from 'react';
import Rand from 'some-rand-library'; // предположим, что Rand экспортирует функцию getRandomNumber

function App() {
  const [randomNumber, setRandomNumber] = useState(Rand.getRandomNumber());
  const [count, setCount] = useState(0);

  useEffect(() => {
    const interval = setInterval(() => {
      setRandomNumber(Rand.getRandomNumber());
      setCount(prev => prev + 1);
    }, 3000);

    return () => clearInterval(interval);
  }, []);

  return (
    <div>
      <p>Случайное число: {randomNumber}</p>
      <p>Количество изменений: {count}</p>
    </div>
  );
}

export default App;

Здесь всё логика обновления находится внутри компонента App: с помощью useEffect создаётся интервал, который обновляет состояние randomNumber и count каждые 3 секунды.