実現したいこと
アトミックデザインという手法を知って、コンポーネントをAtom単位で分割しようと思いました。
クリック回数を表示する簡単なプログラムを、CounterとBtnコンポーネントに分割しました。そのコンポーネントをOrganismsクラスで呼び出しています。
問題点
buttonがクリックされた事を、BtnコンポーネントからCounterコンポーネントにどのように伝えるべきですか?
ソースコード
JavaScript
1import React, { Component } from 'react'; 2 3import Counter from './atoms/Counter'; 4import Btn from './atoms/Btn'; 5 6export default class Organisms extends Component { 7 render() 8 { 9 return( 10 <> 11 <Counter /> 12 <Btn /> 13 </> 14 ); 15 } 16} 17
JavaScript
1import React, { Component } from 'react'; 2 3export default class Btn extends Component { 4 render() 5 { 6 return( 7 <button>Click!</button> 8 ); 9 } 10} 11
JavaScript
1import React, { Component } from 'react'; 2 3export default class Counter extends Component 4{ 5 constructor(props) 6 { 7 super(props); 8 this.state = { 9 count: 0 10 } 11 } 12 13 render() { 14 return( 15 <p>クリック数: {this.state.count}</p> 16 ); 17 } 18} 19
回答1件
あなたの回答
tips
プレビュー