如果您的應用程式有非常耗費性能的數據操作,例如複雜的資料庫查詢或 API 請求,那麼使用快取來提高性能就非常重要。
import { getUser } from './data';
import { unstable_cache } from 'next/cache';
const getCachedUser = unstable_cache(
async (id) => getUser(id),
['my-app-user']
);
export default async function Component({ userID }) {
const user = await getCachedUser(userID);
// ...
}
unstable_cache
返回一個函數來處理快取數據,如果數據不在快取中,則會調用傳入的數據請求函數來獲取數據,並將獲取到的數據快取和返回。
注意:不要快取需要身份驗證的數據,一個好的辦法是僅快取公共數據。
unstable_cache
是一個不穩定的 API,在未來的版本中可能會發生變化,具體的使用方法可以參考官方文檔。
Next.js 版本:v14.0.0