React(TypeScript)でコンポーネントのtypeを別のコンポーネントで使いたいっ![ComponentProps]
2022年1月11日
とあるコンポーネントのPropsで指定しているtypeを使いまわしたい時にComponentPropsを使うのを忘れそうなのでメモ。
const Hoge: React.FC<{ id: number }> = ({ id }) => { return <>{id}</>; };
渡したidをrenderするだけのコンポーネントですが、これと完全に同じPropsを受け取る別のコンポーネントで型指定をお手軽にすることができる。
import Hoge from 'hoge.tsx'; type FooProps = React.ComponentProps<typeof Hoge>; const Foo: React.FC<FooProps> = ({ id }) => { return <>{id}</> };
React.ComponentProps
でtypeを作るとそのコンポーネントのPropsのtypeをそのまま持ってくることができます。