7
私はredux sagasイベントチャネルを使用しています。私はeventChannelがジェネレータ関数ではないためイベントがトリガされるときにgetStore状態にしたい特定のユースケースを持っています。私はreduxサガの選択効果を使用できません。これを達成するための他の方法は?通常の機能/イベントチャネルで選択効果を使用
私もストアをインポートしようとしましたが、store.getState()
を使用しましたが、ストアが初期化される前にsagaファイルがインポートされるため、私は定義されていません。
function subscribe(socket) {
return eventChannel(emit => {
socket.subscribe(listenerTopic, {qos: 1});
socket.on('reconnection',() => {
// i need to fetch latest unread message, for that i need to get timestamp
// for last message received which is in store so the command will be to
// send sinceDate i.e last message timestamp and untilDate that is currentDate
})
}
解決策には、eventEmitter関数からそのアクションを実行するサガにいくらかのロジックを移動することが含まれます。あなたはイベントを取っているイベント/イベントが何をしているのかを見ることができるようにいくつかのコードを共有できますか? – VonD
私のユースケースは です。接続が回復したときに最新の未読メッセージを取得する必要があります。タイムスタンプを取得する必要があります。最後のメッセージが受信されたので、 に送信されます。現在の日付です –