Skip to content

sync(x-markdown): 跟进 ant-design/x #1993、#1997、#1998 #186

Description

@cc-hearts

背景

跟进 ant-design/x2c3146a25aad7b9 的上游变更。本轮共识别出 3 个需要同步到 packages/x-markdown 的已合并 PR。

上游最新 commit:25aad7b9
上游最新 tag:2.9.0

同步清单

  • P2 / Medium ant-design/x#1993 - feat(x-markdown): add componentsProps to pass extra props to custom components

    • XMarkdown 增加按标签传递额外属性的 componentsProps API。
    • 在 Vue renderer 中实现 props 合并,确保 childrenstreamStatusblocklang 等内部属性不被覆盖。
    • 无语言代码块不能从外部 props 继承 lang
    • 补充 props 更新不导致自定义组件重复挂载的测试及文档。
  • P2 / Low ant-design/x#1997 - fix(markdown): avoid parsing currency as LaTeX

    • 单美元公式遵循 Pandoc 定界符规则,避免 ($100) 等金额被识别为公式。
    • 保留双美元、括号公式、转义美元和数字开头公式行为。
    • 为 Latex plugin 增加金额、CJK、边界和转义场景的回归测试。
  • P2 / Medium ant-design/x#1998 - fix(x-markdown): use useRef render-phase computation to eliminate extra re-render in AnimationText

    • 对照 Vue 生命周期优化 AnimationText 的流式增量分块,避免额外响应式更新和重复动画。
    • 保留追加文本、文本替换和空增量行为。
    • 增加流式更新、非追加更新及动画 key 稳定性测试。

影响范围

  • packages/x-markdown/src/XMarkdown
  • packages/x-markdown/src/plugins/Latex
  • packages/x-markdown/README.md
  • packages/x-markdown/README-zh_CN.md

完成标准

  • 三个上游 PR 的适用逻辑均已完成 Vue 3 适配,或在此 issue 中记录明确的不适用结论。
  • 相关单元测试和文档已补充。
  • vp check、x-markdown 类型检查及相关测试通过。
  • 下游 PR 描述中链接对应上游 PR 和本 issue。

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions