logoAnt Design X

设计研发组件X MarkdownX SDKX Skill演示国内镜像
  • 介绍
  • 代码示例
    2.0.0
  • 在线体验
  • 主题
  • 流式处理
  • 组件
    • 总览
    • 聊天增强
    • 数据展示
    • 富文本增强
  • 插件集
    • 总览
    • Latex公式
    • CustomPlugins自定义插件

流式处理

处理 LLM 流式返回的 Markdown:不完整语法修复、渐进动画,以及开发期可选的性能监控。

代码示例

API

streaming

参数说明类型默认值
hasNextChunk是否还有后续 chunkbooleanfalse
incompleteMarkdownComponentMap未完成语法的组件映射Partial<Record<Exclude<StreamCacheTokenType, 'text'>, string>>{}
enableAnimation是否启用淡入动画booleanfalse
animationConfig动画参数AnimationConfig{ fadeDuration: 200, easing: 'ease-in-out' }

AnimationConfig

属性说明类型默认值
fadeDuration动画时长(毫秒)number200
easing缓动函数string'ease-in-out'

debug

属性说明类型默认值
debug是否启用性能监控面板booleanfalse

⚠️ debug 仅限开发环境使用,生产环境请关闭以避免性能开销与信息泄露。

支持的不完整语法

TokenType示例
link[text](https://example
image![alt](https://img...
heading###
table| col1 | col2 |
xml<div class="

最小配置示例

tsx
<XMarkdown
content={content}
streaming={{
hasNextChunk,
enableAnimation: true,
incompleteMarkdownComponentMap: {
link: 'link-loading',
table: 'table-loading',
},
}}
components={{
'link-loading': LinkSkeleton,
'table-loading': TableSkeleton,
}}
/>

FAQ

hasNextChunk 可以一直是 true 吗?

不建议。最后一个 chunk 到达后应切换为 false,否则未完成语法会持续停留在占位状态。

Markdown Source
Rendered Output
语法处理

不完整语法修复与占位

CodeSandbox Icon
codepen icon
External Link Icon
expand codeexpand code
Animation
Debug panel
动画与调试

淡入动画与可选调试面板

CodeSandbox Icon
codepen icon
External Link Icon
expand codeexpand code