将 SWR 与特定于经过身份验证的用户的数据一起使用
useSWR with data specific to an authenticated user
我想使用 SWR 为登录用户获取数据,但我不确定如何以正确的方式执行此操作。
例如说我想从 api 路径 api/get/cards
为登录的特定用户获取数据。我可以使用 api/get/cards
因为他们在 SWR 中键入,但我假设缓存不会知道数据仅特定于当前用户?然后缓存将只为最后一个用户提供数据,而不一定是当前调用它的用户?这样做的最佳方法是什么?
对于这个精确的场景,您可以将数组作为 key
参数传递给 useSWR
。
const { data } = useSWR(['/api/get/cards', userId], (url, userId) => { /* Fetching logic */ })
请求的键现在将是两个值的组合,如果 userId
更改,将重新生效。
我想使用 SWR 为登录用户获取数据,但我不确定如何以正确的方式执行此操作。
例如说我想从 api 路径 api/get/cards
为登录的特定用户获取数据。我可以使用 api/get/cards
因为他们在 SWR 中键入,但我假设缓存不会知道数据仅特定于当前用户?然后缓存将只为最后一个用户提供数据,而不一定是当前调用它的用户?这样做的最佳方法是什么?
对于这个精确的场景,您可以将数组作为 key
参数传递给 useSWR
。
const { data } = useSWR(['/api/get/cards', userId], (url, userId) => { /* Fetching logic */ })
请求的键现在将是两个值的组合,如果 userId
更改,将重新生效。