跳至主要內容

預先渲染是指在建置時為頁面產生一次 HTML,而不是針對每個請求動態產生。

優點是提供靜態資料非常便宜且高效能,讓您可以輕鬆地為大量使用者提供服務,而無需擔心快取控制標頭(這很容易出錯)。

缺點是建置過程會花費更長的時間,並且只有在建置和部署新版本的應用程式後才能更新預先渲染的內容。

若要預先渲染頁面,請將 prerender 設定為 true

src/routes/+page.server
export const prerender = true;

在教學中,這不會有任何可觀察到的效果,因為應用程式在 dev 模式下執行。

並非所有頁面都可以預先渲染。基本規則如下:要使內容可預先渲染,任何兩個直接訪問的使用者必須從伺服器獲得相同的內容,且頁面不得包含表單動作。具有動態路由參數的頁面可以預先渲染,只要它們在 prerender.entries 組態中指定,或可以透過追蹤來自 prerender.entries 中的頁面的連結來訪問。

在根 +layout.server.js 內部將 prerender 設定為 true,實際上會將 SvelteKit 轉變為靜態網站產生器 (SSG)。

在 GitHub 上編輯此頁面

上一頁 下一頁
1
2
<h1>Prerendering</h1>