React.FC or JSX.Element
今更の React v18 : children の扱いが変わった (TypeScript) - かもメモ
読んだ。
React v18 へのアップデートの話だけど、直近で React.FC と JSX.Element のどっちを使えばいいのかを考える機会があったので参考になった。
記事自体は5月のものだがはてブのテクノロジーカテゴリに最近上がっていた。
結論としてはどっちでもいいというもので、前からあった React.VFC が非推奨になり、代わりに React.FC がその機能を受け継ぐという感じになる。
chidren を渡すときに明示的に定義しないと怒られる。
で、じゃあ React.FC と JSX.Element の違いはというとほとんどなくて React.FC が JSX.Element | null を返せるということだけ。なのでどっちを使ってもよさそう。
この記事にもある通り props の型定義をジェネリクスで渡せて見た目がスッキリしているのは React.FC のほうなので、個人的にはこっちのほうが好みかも。