12

Backbone.View を React に移植しています。何かが欠けているかもしれませんが、コンポーネントの状態を兄弟の状態に依存させる慣用的な方法がわかりません。たとえば、次のようなコンポーネントがあるとします。

<Timeline>
  <Page selected="true" onClick={this.handleClick} />
  <Page selected="false" onClick={this.handleClick}/>
</Timeline>

そして、すべての handleClick がそれを行うとしましょうsetState({selected: true})。私の質問は、このコンポーネントの兄弟の状態が true に設定される前に false に設定されていることを確認するにはどうすればよいかということです。

私の理想的な解決策は、小道具の状態の変化をリッスンし、Timeline コンポーネントからサブコンポーネントを強制的にレンダリングすることですが、これが受け入れられたアプローチであるかどうかはわかりません。

また、このコンポーネントを実装する別の方法を探しています。コンポーネントを分解する推奨される方法は、可能な限りステートレスに保ち、他の場所で再利用できるようにすることだと理解しているからです。

4

1 に答える 1