Reactコンポーネントを一定時間後に表示する方法


  1. setTimeoutを使用する方法: setTimeout関数を使用して、指定した時間後にコンポーネントを表示することができます。
import React, { useState, useEffect } from 'react';
const DelayedComponent = () => {
  const [showComponent, setShowComponent] = useState(false);
  useEffect(() => {
    const timer = setTimeout(() => {
      setShowComponent(true);
    }, 3000); // 3秒後に表示する例
    return () => clearTimeout(timer);
  }, []);
  return (
    <div>
      {showComponent && <YourComponent />}
    </div>
  );
};
const YourComponent = () => {
  return <div>表示されるコンポーネント</div>;
};
export default DelayedComponent;
  1. ReactのstateとsetIntervalを使用する方法: setInterval関数を使用して、一定の間隔でstateの値を変更し、コンポーネントを表示することができます。
import React, { useState, useEffect } from 'react';
const DelayedComponent = () => {
  const [showComponent, setShowComponent] = useState(false);
  useEffect(() => {
    const interval = setInterval(() => {
      setShowComponent(true);
      clearInterval(interval); // コンポーネントを1回だけ表示する場合はコメントアウトする
    }, 3000); // 3秒後に表示する例
    return () => clearInterval(interval);
  }, []);
  return (
    <div>
      {showComponent && <YourComponent />}
    </div>
  );
};
const YourComponent = () => {
  return <div>表示されるコンポーネント</div>;
};
export default DelayedComponent;
  1. Reactのstateとasync/awaitを使用する方法: async/awaitを使用して一定時間待機し、stateを変更してコンポーネントを表示することもできます。
import React, { useState, useEffect } from 'react';
const DelayedComponent = () => {
  const [showComponent, setShowComponent] = useState(false);
  useEffect(() => {
    const delay = async () => {
      await new Promise((resolve) => setTimeout(resolve, 3000)); // 3秒待機する例
      setShowComponent(true);
    };
    delay();
    return () => {
      // クリーンアップ処理
    };
  }, []);
  return (
    <div>
      {showComponent && <YourComponent />}
    </div>
  );
};
const YourComponent = () => {
  return <div>表示されるコンポーネント</div>;
};
export default DelayedComponent;

これらの方法を使用すると、一定時間後にReactコンポーネントを表示できます。選択した方法に合わせて、コードをカスタマイズしてください。