私はGUIの反応/ reduxベースのアプリを持っています。ビューの一環として、点滅したい "インジケータ"反応コンポーネントがあり、点滅はCSS3アニメーション(アニメーションフレーム)で行われます。反応コンポーネントのメンバー関数indicator.blink()
は、インジケータを点滅させるために呼び出されます(基本的には、点滅クラスをDOM要素から削除し、1ms後に追加します。ハックとして「再起動」APIがないことを回避します)。 CSS3アニメーションの場合)。Reduxからイベントを受け渡すにはどうすればいいですか?
reduxフレームワーク(必要な場合はサンク)で特定のアクションが発生した場合、このblink()
を反応ビューで機能させたいと思います。これを最もうまくいく方法は?
還元状態のアクションをアプリの状態に変更するのが正しいと感じていないので、インジケータ要素は実際には状態ではなく瞬間的なイベントであるため、状態変数の1つにprop
としてバインドします。しかし、反応成分を変化させるための還元作用を得る他の方法は知らない。
CSS3でこのような「再起動」アニメーションがあった場合はどうなりますか?このシナリオでは、 'STOP_BLINK'の必要はなく、' isBlinking'を 'true'に繰り返し設定することで、Reactコンポーネントに何かを伝えないので、アニメーションを実行して再起動することができます。 基本的に、私はReduxのアクション項目は、「時代を超越した」(すなわちイベント)であるため、状態を変更すると意味がないところでは、リアクトビューにイベントを送信する必要があるでユースケースを見つけようとしています。 私は不可能/不可能と考えていますか? – gbmhunter
このような状況が発生した場合は、ReduxとReactのフローを回避し、必然的に行うだけです。本当はReduxには関係ありません。行動を起こす場所で命令的な効果を発揮する。 –
必須の効果はありますか?これは、ReduxアクションからReactコンポーネントへの通信方法ですか?私は、アクション内からReactコンポーネントへのアクセスを調べましたが、簡単には見えませんでした(つまり、 'React.render()が何をグローバル変数に戻したのかを確認し、Reactテストユーティリティ関数を使用して子コンポーネント)。 – gbmhunter