By default, React caches all fetch
requests in Request Memoization. However, it also provides a cache
function to wrap other non-fetch
requests and make them behave like fetch
requests.
import { cache } from "react"
import { queryDatabase } from "./databaseClient"
export const fetchUserData = cache(userId => {
// Direct database query
return queryDatabase("SELECT * FROM users WHERE id = ?", [userId])
})
References