- プロップスを使用する方法: Reactでは、親コンポーネントから子コンポーネントにデータを渡すためにプロップス(props)と呼ばれるメカニズムを使用します。以下は、プロップスを使用して子コンポーネントにデータを渡す基本的な方法の例です。
親コンポーネント:
import React from 'react';
import ChildComponent from './ChildComponent';
const ParentComponent: React.FC = () => {
const data = 'Hello, child component!';
return <ChildComponent data={data} />;
};
export default ParentComponent;
子コンポーネント:
import React from 'react';
interface ChildProps {
data: string;
}
const ChildComponent: React.FC<ChildProps> = ({ data }) => {
return <div>{data}</div>;
};
export default ChildComponent;
- コンテキストを使用する方法: コンテキスト(Context)を使用すると、親コンポーネントと子コンポーネント間でデータを受け渡すことができます。以下は、コンテキストを使用した子コンポーネントの受け渡し方法の例です。
親コンポーネント:
import React from 'react';
import { MyContext } from './MyContext';
const ParentComponent: React.FC = () => {
const data = 'Hello, child component!';
return (
<MyContext.Provider value={data}>
<ChildComponent />
</MyContext.Provider>
);
};
export default ParentComponent;
子コンポーネント:
import React, { useContext } from 'react';
import { MyContext } from './MyContext';
const ChildComponent: React.FC = () => {
const data = useContext(MyContext);
return <div>{data}</div>;
};
export default ChildComponent;
- Reduxを使用する方法: Reduxは、アプリケーション全体での状態管理を容易にするためのライブラリです。Reduxを使用すると、親コンポーネントと子コンポーネント間で状態を共有することができます。以下は、Reduxを使用した子コンポーネントの受け渡し方法の例です。
親コンポーネント:
import React from 'react';
import { useDispatch } from 'react-redux';
import { setData } from './redux/actions';
const ParentComponent: React.FC = () => {
const dispatch = useDispatch();
const data = 'Hello, child component!';
dispatch(setData(data));
return <ChildComponent />;
};
export default ParentComponent;
子コンポーネント:
import React from 'react';
import { useSelector } from 'react-redux';
const ChildComponent: React.FC = () => {
const data = useSelector((state) => state.data);
return <div>{data}</div>;
};
export default ChildComponent;
これらはReact TypeScriptで子コンポーネントを受け渡すための一般的な方法のいくつかです。適切なシナリオに応じて、最適な方法を選択してください。