voyagegroup/ingred-ui

`typing.d.ts` の `React.StatelessComponent` を `React.FunctionComponent` にする

takurinton opened this issue · 4 comments

現在削除済みの StatelessComponent が typing.d.ts で使われてるので、置き換えたい。
https://github.com/voyagegroup/ingred-ui/blob/master/src/typings.d.ts#L10

// typing.d.ts
// 名前空間 'React' にエクスポートされたメンバー 'StatelessComponent' がありません。ts(2694)
type SvgrComponent = {} & React.StatelessComponent<
  React.SVGAttributes<SVGElement>
>;

image

deprecatedになったのこの辺から
DefinitelyTyped/DefinitelyTyped#30364

The motivation for this is twofold: firstly the addition of hooks means function components can have state, and secondly the term "stateless component" can equally apply to class components which don't use any state, causing some confusion

以下の理由から混乱を解消するために名前を変更

  1. hooksの登場で状態を持てるようになった
  2. クラスコンポーネントにもStatelessComponentが使えてしまう

なんとなくmui
mui/material-ui-pickers#2056

色々調べようとしましたが、そもそもエイリアスでしかなくあまり論点なさそうなので、タイトルまま変更して良さそうです。

なるほど、ここらへんのコメントが今の実装になってるのか
DefinitelyTyped/DefinitelyTyped#30364 (comment)