我使用 Vercel 檔案中提供的示例,每 15 秒后從 MongoDB 獲取資料,但不幸的是該函式不起作用。我應該怎么做才能讓它按預期作業?
export async function getStaticProps() {
const allData = getSortedData();
const client = await clientPromise;
const isConnected = await client.isConnected();
const alerts = await client.db()
.collection("alerts")
.find({})
.limit(6)
.toArray();
const alertsData = JSON.parse(JSON.stringify(alerts));
return {
props: {
allData,
isConnected,
alertsData
},
revalidate: 15,
};
}
uj5u.com熱心網友回復:
所以 revalidate 不僅僅是每 15 秒獲取一次新資料。它在構建時生成頁面,將其作為快取中的靜態內容提供,然后等待下一個用戶觸發新構建。新用戶第一次觸發構建時,他/她將看到一個陳舊的頁面。然后在后臺生成新頁面并提供給下一個重繪 特定網頁的用戶。
這是一個帶有時間戳的快速視頻,由 Lee Robinson 解釋。 https://youtu.be/nrfuN_Hyd3Y?t=112
我希望這能讓你更清楚!
uj5u.com熱心網友回復:
使用SWR 重新驗證資料。這是檔案的鏈接: SWR 檔案
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/335962.html
標籤:反应 MongoDB 下一个.js 原汁原味的 获取静态道具
