1

ユーザーがコンポーネントをクリックしたときにコンポーネントのshowメソッドを呼び出そうとしていますが、機能しません。Modal<button>App

a を使用して、コンポーネントからコンポーネントrefにアクセスします。ModalApp

class Modal extends React.Component {
  constructor(props) {
    super(props);
    this.show = this.show.bind(this);
  }

  show() {
    console.log('show');
  }

  render() {
    return (
      <div>...</div>
    );
  }
}

class App extends Component {
  constructor(props) {
    super(props);
    this.modalRef = React.createRef();
  }

  render() {
    return (
      <div>
        <Modal ref={this.modalRef}/>

        <button id="myBtn" onClick={ this.modalRef.show }>
          Call show modal method
        </button>
      </div>
    );
  }
}
4

2 に答える 2