React · Senior · Pytanie 1 z 75
Dlaczego cache() z React przydaje się w Server Components?
- ✓Poprawna odpowiedź: Deduplikuje wywołania z tymi samymi argumentami w obrębie jednego żądania
- 2Przechowuje wynik funkcji między żądaniami różnych użytkowników na zawsze
- 3Cache'uje JSX komponentu w przeglądarce między przejściami stron
Wyjaśnienie
const getUser = cache(async (id) => db.user.find(id)) - kilka komponentów w jednym renderze serwerowym może wywołać getUser(1), a zapytanie do bazy wykona się raz. Cache żyje tylko w obrębie żądania, więc dane różnych użytkowników się nie mieszają. Cache'owanie między żądaniami w Next.js robi się przez 'use cache'.