ctx.render()
将 React 元素、HTML 字符串或 DOM 节点渲染到指定容器中。不传 container 时默认渲染到 ctx.element,并自动继承应用的 ConfigProvider、主题等上下文。
适用场景
注意:
ctx.render()需要渲染容器。若不传container且ctx.element不存在(如无 UI 的纯逻辑场景),会抛出错误。
类型定义
返回值:
- 渲染 React 元素 时:返回
ReactDOMClient.Root,便于后续调用root.render()更新 - 渲染 HTML 字符串 或 DOM 节点 时:返回
null
vnode 类型说明
示例
渲染 React 元素(JSX)
渲染 HTML 字符串
渲染 DOM 节点
指定自定义容器
多次调用会替换内容
注意事项
- 多次调用会替换:每次
ctx.render()会替换容器内已有内容,不会追加。 - HTML 字符串安全:传入的 HTML 会经 DOMPurify 清洗,降低 XSS 风险,但仍建议避免拼接不可信用户输入。
- 不要直接操作 ctx.element:
ctx.element.innerHTML已废弃,应统一使用ctx.render()。 - 无容器时需传 container:在
ctx.element为undefined的场景(如ctx.importAsync加载的模块内),需显式传入container。
相关
- ctx.element - 默认渲染容器,
ctx.render()未传 container 时使用 - ctx.libs - React、antd 等内置库,用于 JSX 渲染
- ctx.importAsync() - 按需加载外部 React/组件库后配合
ctx.render()使用

