コンポーネントBからのボタンをクリックすると、コンポーネントAでメソッドを呼び出す最も良い方法は何ですか?他のコンポーネントからのアクション時にコンポーネントメソッドを呼び出す
両方のコンポーネントが互いに分離されています。 私は私のような行動をいくつかの非常に単純な実装を使用することができると信じて:
成分Aがアクションを送信します。
{action: "BUTTON_CLICKED", value: true}
リデューサーキャッチアクション:
case "BUTTON_CLICKED": {
const newState = { ...state };
newState.clicked = true;
return newState;
}
成分Bは、小道具をリッスン::
をcomponentWillReceiveProps = (newProps) => {
if (newProps.clicked) {
someMethod()
}
};
リセットフラグ:
someMethod =()=>{
dispatch({action: "BUTTON_CLICKED", value: false})
}
しかし、この方法は間違っています。
react/reduxでコマンドパターンを実装する方法はありますか?
ありがとうございました
なぜこれが間違っていると思いますか? –
本当ですか?なぜコンポーネントBはコンポーネントAからのボタンについて何か知っているべきですか? – 5minutes2start
さて、ええ、還元はこのように動作します。あなたのアプリで真実のその単一のソース。ですから、コンポーネントBはコンポーネントAについての変更を知っていますが、還元型のストアを通じて知ることができます。コードは私にはきれいに見えます –