SuperAPI AI 工具集

json-render-react-email

前端与建站

查看项目

更新于 10-16 08:08

技能介绍

用途:将 json-render 的 JSON 规格渲染为 HTML 或纯文本邮件,基于 @react-email/components 与 @react-email/render。

主要能力:提供 renderToHtml(spec, options?) 与 renderToPlainText(spec, options?),将规格转为邮件字符串。规格结构与 @json-render/react 相同的扁平元素树,含 root 与 elements;root 须为 Html,其子级为 Head 与 Body,Body 内常用 Container 限制宽度。支持用 defineCatalog 定义基于 Zod 的组件目录,并用 defineRegistry 建立类型安全的组件注册表,可扩展自定义组件如 Alert。

状态与可见性:支持 visible 条件、$state、$cond、repeat(repeat.statePath)等表达式。服务端渲染时通过 RenderOptions 的 state 传入状态以解析表达式。RenderOptions 还含 registry、includeStandard(默认 true)。

导出与子路径:提供 defineRegistry、Renderer(浏览器预览,配合 JSONUIProvider)、createRenderer、renderToHtml、renderToPlainText、schema、standardComponents、standardComponentDefinitions。子路径包括完整包、仅 schema 与目录的 /server(不依赖 React)、目录 /catalog、仅渲染函数的 /render。

标准组件:文档结构 Html(lang、dir)、Head、Body;布局 Container、Section、Row、Column;内容 Heading、Text、Link、Button、Image、Hr;工具 Preview、Markdown。所有组件接受 style 对象以设置内联样式。

使用建议:Container 限宽(如 600px);使用内联样式,因部分客户端会剥离 <style>;优先表格布局(Section、Row、Column);图片用绝对 URL;在 Gmail、Outlook、Apple Mail 等多客户端测试。

限制:资料未提供收费、价格、平台与性能等细节,暂未提供;邮件客户端兼容性需自行验证。