为什么捐赠
API 资源管理器
升级指南
新增!
quasar.config 文件
将项目转换为使用 Vite 的 CLI
浏览器兼容性
支持 TypeScript
目录结构
命令列表
CSS 预处理器
路由
延迟加载 - 代码分割
处理资源
启动文件
预取功能
API 代理
处理 Vite
处理 process.env
使用 Pinia 进行状态管理
使用 Vuex 进行状态管理
代码检查器
测试和审计
开发移动应用
Ajax 请求
向公众开放开发服务器
使用 Vite 的 Quasar CLI - @quasar/app-vite
SSR 常见问题

为什么我会遇到水合错误?

请查看我们的 客户端水合 页面。当您遇到水合错误时,表示服务器上渲染的 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
}

ssrContext启动文件预取功能 中可用,其中它作为参数提供。

这样做是有充分理由的。在仅限客户端的应用程序中,每个用户都将在其浏览器中使用应用程序的新实例。对于服务器端渲染,我们希望得到相同的结果。每个请求都应具有一个新的、隔离的应用程序实例,以避免跨请求状态污染。所以 PlatformCookies 需要分别绑定到每个请求。

阅读 编写通用代码 文档页面也是一个好主意。

为什么 LocalStorage 和 SessionStorage 不起作用?

在服务器端运行代码时,存储设施无法工作。Web 存储是仅限浏览器的 API。