ドキュメントには次のように書かれています。
cacheEntryRemoved
- キャッシュエントリがキャッシュから削除された時点を待機できるようにする Promise。これは、アプリケーションで長期間使用/サブスクライブされていないか、api.utils.resetApiState をディスパッチすることによって行われます。
ドキュメントを視覚的にスキャンしましたが、この部分はまだ理解できていません。
上記の引用は、クエリを使用するコンポーネントがマウント解除されたときに約束が果たされることを意味しますか?
コンポーネントがストリーミング更新を受信している場合はどうなりますか?
cacheEntryRemoved
WS サーバーから受信するメッセージの一部が不要になった場合に、onCacheEntryAdded で約束が果たされた直後に、既存の WebSockets 接続から部分的にサブスクライブ解除することをお勧めしますか? それとも、WS 接続からそのチャネルの useEffect フックのクリーンアップ関数でサブスクライブを解除する方がよいでしょうか?
メッセージのより多くのチャネルを並行して受信するために使用される単一の Socket.IO 接続があります。一部のコンポーネントにはチャネルが必要であり、他のコンポーネントには別のチャネルが必要であり、他のコンポーネントには既存のマウントされたコンポーネントと同じチャネルが必要です。この約束が果たされた後、チャンネル登録を解除しても問題ありませんか? これについての詳細は、この他の質問に記載しています。