HOCの入力タイプに突然変異を伴うgraphqlを使用していますcheckbox。オプティミスティック UI 更新オプションも追加しました。チェックボックスをvalue=trueオンにすると でミューテーションが発生し、チェックを外すと でミューテーションが発生しvalue=falseます。
しかし、問題は、高速クリックによってサーバーへの複数のミューテーション呼び出しが発生し、応答に遅延が生じることです。一方optimisticResponse、更新はその仕事を行い、チェックボックスを切り替えます。サーバーの応答が到着すると、更新関数が再度呼び出され、チェックボックスがトグルされ、UI に不具合が発生します。
予想できる流れをまとめます
クリックの順序:
Check => Uncheck => Check
UI 更新の順序:
Check(optimistic response) => Uncheck(optimistic response) => Check(server response) => Check(Optimistic response) => Uncheck(server response) => Check(server response)
これらのグリッチを取り除く方法はありますか?