Zarządzanie stanem · Senior · Pytanie 51 z 75

Jak zapisywać aktualizacje z WebSocketa do wpisu bufora RTK Query?

async onCacheEntryAdded(arg, { updateCachedData, cacheDataLoaded, cacheEntryRemoved }) {
  await cacheDataLoaded;
  const ws = new WebSocket(url);
  ws.onmessage = (e) => updateCachedData((draft) => { draft.push(JSON.parse(e.data)); });
  await cacheEntryRemoved;
  ws.close();
}

Wyjaśnienie

Gniazdo żyje dokładnie tak długo, jak wpis bufora ma choć jednego subskrybenta, a aktualizacje przechodzą przez drafty Immera jak inne aktualizacje bufora.

Do poczytania

Błąd w pytaniu

Zarządzanie stanem · Senior · pytanie 51

Sprawdź się

Rozwiąż test Zarządzanie stanem · Senior: pytania i odpowiedzi są tasowane, a na końcu czeka przegląd błędów.

Rozwiąż ten test