При использовании SWR у вас может возникнуть такая проблема: вы хотите выполнить запрос, только если у вас есть какие-то данные.
Например, в одном из моих случаев мне нужно было выяснить, вошел ли пользователь в систему, прежде чем отправлять запрос в конечную точку /api/user , чтобы получить данные пользователя.
В частности, у меня был объект сеанс , а внутри него объект пользователь . И то, и другое нуждалось в определении.
Итак, вот что я сделал:
import fetcher from 'lib/fetcher'
...
const { data: userData } = useSWR(session && session.user ? `/api/user` : null, fetcher)Первый параметр – это URL-адрес. Если это нуль ,
Оригинал: “https://flaviocopes.com/swr-conditionally-load-data/”