知りたいこと
React.forwardRefを利用した以下のようなコードがあります。
tsx
1import * as React from 'react' 2 3type ButtonProps = React.HTMLProps<HTMLButtonElement> 4 5const FancyButton = React.forwardRef<HTMLButtonElement, ButtonProps>((props, ref) => ( 6 <button type="button" ref={ref} className="FancyButton"> 7 {props.children} 8 </button> 9)) 10 11const ref = React.createRef<HTMLButtonElement>() 12 13<FancyButton ref={ref}>Click me!</FancyButton>
このとき5行目でforwardRefのジェネリクスに指定している<HTMLButtonElement, ButtonProps>
の意味がわかりません。
forwardRefの型定義を見ると以下のようになっています。
ts
1function forwardRef<T, P = {}>(render: ForwardRefRenderFunction<T, P>): ForwardRefExoticComponent<PropsWithoutRef<P> & RefAttributes<T>>;
このT
とP
にあたるものを指定しているのだと思いますが、それぞれどのような値(型)を設定すべき項目なのでしょうか。
ご教示宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。