nargo-ssr 0.0.0

Nargo server-side rendering
Documentation

nargo-ssr

HXO 框架的服务端渲染 (SSR) 核心逻辑。

📖 简介

nargo-ssr 负责将 nargo-ir 转换为可在服务端运行的渲染函数。它不仅生成 HTML 字符串,还负责注入 Hydration 所需的元数据(如 data-nargo-id),确保客户端能够平滑接管。

✨ 核心特性

  • 高效字符串拼接: 使用 JsWriter 生成基于字符串拼接的渲染函数,最大限度减少运行时的内存分配。
  • Hydration 友好: 自动为动态节点注入 data-nargo-id,实现服务端与客户端的精准匹配。
  • 指令支持: 处理模板中的 SSR 特有指令,如条件渲染和列表循环。
  • 状态注入: 支持将初始化状态序列化并嵌入 HTML 页面中。

🏗️ 核心逻辑

  • SsrBackend: 核心生成引擎,利用 JsWriter 构建 render(ctx) 函数。
  • 标识符注入: 为所有非静态元素分配唯一的 ID,以便 nargo-hydrate 在客户端识别。
  • 静态提升: 模板中的静态部分在编译时直接转化为 HTML 字符串常量。

🔗 相关项目