やりたいこと
ReactでコンポーネントAからコンポーネントB内のメソッドを呼び出したいです。
クラスコンポーネントの場合は以下のように実装できるはずですが、
同じことを関数コンポーネント間で行うにはどのような方法が良いのでしょうか?
実際のコンポーネントBはhookで状態管理を行っており、コンポーネントAに返したい値は'hoge'のような固定メッセージではなくB内のstateによって動的に変化させたいです。
そうなってくると、やはりクラスコンポーネントを使用するのが最もシンプルでしょうか?
クラスコンポーネントの実装例
コンポーネントA
javascript
1import B from 'B' 2 3class A extends React.Component { 4 getMessage(){ 5 const message = B.returnMessage() 6 return message 7 } 8render(){ 9 return( 10 { getMessage() } // 'hoge' 11 } 12 } 13}
コンポーネントB
javascript
1class B extends React.Component { 2 static returnMessage(){ 3 return 'hoge' 4 } 5} 6export default B
回答1件
あなたの回答
tips
プレビュー