renderToString() 服务端渲染为字符串
最后更新:2026-10-22
renderToString() 服务端渲染为字符串
renderToString() 在 Node 服务端把应用渲染成 HTML 字符串:SSR 的输出环节,配合 createSSRApp 在客户端注水。
| 分组 | 渲染函数与 SSR |
|---|---|
| 类型 | API |
| 作用域 | 全局 |
| Vue 版本 | 3.0+ |
| SSR 支持 | 支持 |
📝 语法
import { renderToString } from "vue/server-renderer"
const html = await renderToString(app)
⚙️ 参数
| app, context? | 应用实例(可传上下文对象,如 SSR context) |
|---|
返回值:Promise
▶ 示例
修改下面的代码,在预览区实时查看效果:
输出:
显示 SSR 说明文字(真实渲染在 Node 环境)。
💡 要点
ℹ️ 说明 从 vue/server-renderer 引入:Node 端专用于 SSR,浏览器无法使用。
💡 提示 配合 onServerPrefetch 预取数据、useSSRContext 传递上下文。
⚠️ 注意 SSR 下组件不能访问 window/document,否则服务端直接报错。
🏷️ 相关渲染函数与 SSR
💡 相关案例
更多案例即将上线。
📚 相关教程
❓ 常见问题
Q 浏览器里能用吗?
A 不能,server-renderer 是 Node 包。
Q 和 Nuxt 的关系?
A Nuxt 内部就是这套机制(renderToString + hydration)的封装。
Q 输出要包含什么?
A 页面 HTML + 序列化的状态,客户端注水时复用。