搭配 Webpack 的 Quasar CLI - @quasar/app-webpack
為什麼我會收到 hydration 錯誤?
請查看我們的 用戶端 Hydration 頁面。當您收到 hydration 錯誤時,這表示伺服器端渲染的 HTML 與用戶端渲染的等效 HTML 不符。此錯誤僅在開發期間 (而非生產環境) 才會出現,而且在您發布網站之前絕對需要解決。是否有某些內容只能在用戶端產生?那麼請使用 QNoSsr。
為什麼匯入 Platform 和 Cookies 無效?
當為 SSR 建置時,僅使用 $q.platform
/ $q.cookies
形式。或者,在伺服器端時,這是另一個您可以如何使用的範例
// example with Platform; same thing for Cookies
import { Platform } from 'quasar'
// you need access to `ssrContext`
function (ssrContext) {
const platform = process.env.SERVER
? Platform.parseSSR(ssrContext)
: Platform // otherwise we're on client
// platform is equivalent to the global import as in non-SSR builds
}
content_paste
ssrContext
在 啟動檔案 或 PreFetch 功能 中可用,它在其中作為參數提供。
這樣做是有充分理由的。在僅限用戶端的應用程式中,每位使用者都將在其瀏覽器中使用應用程式的全新實例。對於伺服器端渲染,我們希望達到相同的效果。每個請求都應該有一個全新的、隔離的應用程式實例,以便不會發生跨請求狀態污染。因此,Platform 和 Cookies 需要分別繫結到每個請求。
閱讀編寫通用程式碼文件頁面也是一個好主意。
為什麼 LocalStorage 和 SessionStorage 無法運作?
當在伺服器端執行程式碼時,儲存功能無法運作。Web Storage 是僅限瀏覽器的 API。