Releases: Tencent/tdesign-react
Releases · Tencent/tdesign-react
tdesign-react@1.16.7
🌈 1.16.7 2026-03-13
🚀 Features
Progress: 当theme=plump时,当进度条填色区域大小足够容下百分比内容时,百分比内容将显示于进度条填色区域内,否则将显示于进度条填色区域的右侧,具体呈现请参考文档示例 @RSS1102 (#4154)
🐞 Bug Fixes
Affix:- 修复自定义容器时,DOM 节点未准备好就监听导致失败的问题 @RylanBot (#4131)
- 修复自定义容器时,滚动整个页面元素会偏离的问题 @HaixingOoO @RylanBot (#4131)
FormList: 修复setFieldsValue缺乏拷贝从而污染数据的问题 @RylanBot (#4155)InputNumber: 修复disabled时,hover 对应颜色异常的问题 @RylanBot (common#2402)Popconfirm: 修复className没传参时,被转为undefined字符串的问题 @RylanBot (#4159)SelectInput: 修复多选时,点击删除图标会打开Popup的问题 @RylanBot (#4158)Table:TagInput:Typography: 修复开启ellipsis时,字符串被渲染为 HTML 标签的问题 @RylanBot (#4117)
🚀 Features
Progress: Whentheme=plump, if the colored area of the progress bar is large enough to display the percentage value, it will be shown within that area. Otherwise, it will be displayed to the right of the colored area. For details, refer to the documentation example @RSS1102 (#4154)
🐞 Bug Fixes
Affix:- Fixed an issue where listening events failed due to DOM nodes not being ready when a custom container was used @RylanBot (#4131)
- Fixed an issue where scrolling the entire page caused elements to shift position @HaixingOoO @RylanBot (#4131)
FormList: Fixed an issue wheresetFieldsValuedidn’t properly copy data, leading to data corruption @RylanBot (#4155)InputNumber: Fixed an issue where the hover color was incorrect whendisabledwas set @RylanBot (common#2402)Popconfirm: Fixed an issue whereclassNamebecameundefinedwhen no value was passed @RylanBot (#4159)SelectInput: Fixed an issue where clicking the delete icon in multiple-selection mode would trigger thePopup@RylanBot (#4158)Table:- Fixed an issue where merged cells disappeared during virtual scrolling @RylanBot (#4131)
- Fixed an issue where the width of empty rows exceeded that of the table during responsive layout @RylanBot (#4131)
- Fixed an issue with alignment of fixed headers, footers, and scroll bars with the table when used inside a
Dialog@RylanBot (#4131)
TagInput:Typography: Fixed an issue where strings were rendered as HTML tags whenellipsiswas enabled @RylanBot (#4117)
tdesign-react@1.16.6
🌈 1.16.6 2026-02-26
🚀 Features
🐞 Bug Fixes
DateRangePicker: 确保右侧面板年份始终大于左侧面板年份 @uyarn (#4137)Drawer: 修复首次打开时,无法使用esc关闭组件的问题 @RylanBot (#4115)Form: 修复getFieldsValue数据被错误覆盖的问题 @RylanBot (#4125)FormList: 修复add读取到旧索引导致remove异常的问题 @RylanBot (#4135)Popup: 修复trigger="focus"在封装组件中不生效的问题 @RylanBot (#4143)Table: 修复开启虚拟滚动时,footerSummary不生效的问题 @RylanBot (#4112)Typography: 修复copyable.onCopy在初始化时被立即执行的问题 @RSS1102 (#4105)
🚧 Others
🚀 Features
🐞 Bug Fixes
DateRangePicker: Ensured that the year in the right panel is always greater than that in the left panel @uyarn (#4137)Drawer: Fixed an issue where the component couldn’t be closed using theesckey when it was opened for the first time @RylanBot (#4115)Form: Fixed an issue where the data returned bygetFieldsValuewas incorrectly overwritten @RylanBot (#4125)FormList: Fixed an issue where using an old index duringaddoperations caused exceptions inremoveoperations @RylanBot (#4135)Popup: Fixed an issue where thetrigger="focus"property didn’t work in encapsulated components @RylanBot (#4143)Table: Fixed an issue wherefooterSummarywasn’t displayed when virtual scrolling was enabled @RylanBot (#4112)Typography: Fixed an issue wherecopyable.onCopywas executed immediately upon initialization @RSS1102 (#4105)
🚧 Others
@tdesign-react/chat@1.0.2
🎉 发布 @tdesign-react/chat
🌈 1.0.2 2026-02-05
🚀 Features
ChatEngine:- 支持AG-UI Activity-Snapshot/Delta事件的适配,新增useAgentActivity注册hook,并增加示例 @carolin913 (#4119)
- 增加在无 UI 场景下使用 ChatEngine 事件总线机制,并增加示例 @carolin913 (#4119)
- ToolCallRender 增加错误边界处理 @carolin913 (#4119)
- AG-UI协议下几个Delta事件,支持自动初始化接收无Snapshot情况下SSE Chunk流 @carolin913 (#4119)
- Immutable JSON Patch 性能优化,并支持append操作用来追加字符串 @carolin913 (#4119)
ChatMarkdown: 大幅优化依赖CherryMarkdown造成的打包体积膨胀问题,不再内置highlight代码块样式高亮,需要业务自行引入配置 @LzhengH @carolin913 (#4119)ChatSender: 支持readyToSend可以接管发送前校验 @LzhengH (#4119)
tdesign-react@1.16.5
🌈 1.16.5 2026-01-28
🚀 Features
Dialog: 增强dialogClassName属性以支持多种格式 @RSS1102 (#4096)Icon: 新增 217 个与人工智能、文档、徽标和文件相关的图标 @uyarn (#4097)ImageViewer: 添加innerClassName,内容部分的类名,支持多种格式 @RSS1102 (#4087)
🐞 Bug Fixes
Cascader: 修复在弹出层可见期间,滚动位置被意外更新的问题 @RylanBot (#4094)Dialog: 修复1.16.4版本导致点击蒙层时,onOverlayClick和onClose无法触发的问题 @RylanBot (#4098)ImageViewer: 修复className和style属性失效的问题 @RSS1102 (#4087)Popup:Typography: 修复开启ellipsis时,将一个完整英文单词切割放在两行的问题 @RylanBot (#3997)
🚧 Others
🚀 New Features
Dialog: ThedialogClassNameproperty has been enhanced to support multiple formats. @RSS1102 (#4096)Icon: 217 new icons related to artificial intelligence, documents, logos, and files have been added. @uyarn (#4097)ImageViewer: TheinnerClassNameproperty has been introduced to allow for customization of the content area’s class name. Multiple formats are now supported. @RSS1102 (#4087)
🐞 Bug Fixes
Cascader: An issue where the scroll position was accidentally updated while the pop-up was visible has been fixed. @RylanBot (#4094)Dialog: A problem in version 1.16.4 whereonOverlayClickandonCloseevents did not trigger upon clicking the overlay has been resolved. @RylanBot (#4098)ImageViewer: Issues with theclassNameandstyleproperties not taking effect have been fixed. @RSS1102 (#4087)Popup:Typography: An issue where a complete English word was split into two lines whenellipsiswas enabled has been fixed. @RylanBot (#3997)
🚧 Other Improvements
tdesign-react@1.16.4
🌈 1.16.4 2026-01-16
🚀 Features
DatePicker:presets支持 ReactNode,用于完全自定义渲染 @uyarn (#4089)Dialog: @RylanBot (#3950)- 支持
mode="full-screen"的弹窗 - 支持
draggable在mode="modeless"生效
- 支持
Form: 支持getFieldsValue和getFieldValue返回未渲染的数值 @RylanBot (#4050)
🐞 Bug Fixes
Cascader:- 修复在弹出层可见期间,滚动位置被意外更新的问题 @RylanBot (#4062)
- 优化 Safari 浏览器中点击展开图标没有变换方向的问题 @liweijie0812 (#4056)
Dialog:Form:FormList: @RylanBot (#4005)- 修复子节点存在另一个 Form 时,部分 API 异常的问题
- 修复结合
shouldUpdate使用时,initialData不生效的问题 - 修复
add过程中缺乏拷贝从而污染用户原始数据的问题 @RylanBot
InputNumber: 修复大数计算前导零被错误清除的问题 @Liumingxun (common#2394)Menu: 优化 Safari 浏览器中点击展开图标没有变换方向的问题 @liweijie0812 (#4056)Popup:Select:- 修复
tagInputProps.tagProps不生效的问题 @RylanBot (#4070) - 优化 Safari 浏览器中点击展开图标没有变换方向的问题 @liweijie0812 (#4056)
- 修复
SelectInput: @RylanBot (#4070)- 修复
1.16.0版本的修复导致点击closable图标时无法清除选项的问题 - 修复传入
tagInputProps.tagProps.onClose时,onTagChange不生效的问题
- 修复
Text: 修复在关闭copyable的Tooltip时,元素未同步隐藏的问题 @RylanBot (#4067)Textarea: 修复count计算逻辑没有遵循maxcharacter或maxlength的问题 @RylanBot (#4088)TreeSelect: 优化 Safari 浏览器中点击展开图标没有变换方向的问题 @liweijie0812 (#4056)
🚧 Others
Form: 调整useForm返回实例的 TS 类型,避免内部变量的暴露 @RylanBot (#4050)Message: 新增组件的displayName@TidySongS (#4074)
🚀 New Features
DatePicker: Thepresetsnow support ReactNode, allowing for complete custom rendering of this component. @uyarn (#4089)Dialog: @RylanBot (#3950)- Pop-ups with
mode="full-screen"are now supported. - The
draggablefeature can now be used inmode="modeless".
- Pop-ups with
Form: Methods likegetFieldsValueandgetFieldValuenow return unrendered values. @RylanBot (#4050)
🐞 Bug Fixes
Cascader:- The issue where the scroll position was accidentally updated while the pop-up was visible has been fixed. @RylanBot (#4062)
- The problem of the expand icon not changing direction when clicked in Safari has been resolved. @liweijie0812 (#4056)
Dialog:- The issue where
onOverlayClickcouldn’t be triggered whencloseOnOverlayClickwas set tofalsehas been fixed. @TidySongS (#4065) - Pop-ups in
mode="modeless"no longer close when the user clicks on blank areas. @RylanBot (#3950) - The problem of not being able to select text within internal elements like
Inputwhendraggablewas enabled has been fixed. @RylanBot (#3950)
- The issue where
Form:FormList: @RylanBot (#4005)- The issue of certain APIs malfunctioning when a child node contained another
Formhas been fixed. - The problem of
initialDatanot taking effect whenshouldUpdatewas used has been fixed. - The issue of the user’s original data being altered due to a lack of copying during the
addprocess has been fixed.
- The issue of certain APIs malfunctioning when a child node contained another
InputNumber: Leading zeros were incorrectly removed before calculating large numbers. This issue has been fixed. @Liumingxun (common#2394) (#4082)Menu: The problem of the expand icon not changing direction when clicked in Safari has been resolved. @liweijie0812 (#4056)Popup:- In nested scenarios, the inner popup no longer fails to close when the outer popup is hidden. @RylanBot (#4085)
- The popup no longer fails to appear when the
triggerElementis disabled and the user hovers over it. @RylanBot (#4085) - The issue of the arrow position becoming unstable when the
contentwas dynamically modified has been fixed. @RylanBot (#4062)
Select:- The issue where
tagInputProps.tagPropsdid not function correctly has been fixed. @RylanBot (#4070) - The problem of the expand icon not changing direction when clicked in Safari has been resolved. @liweijie0812 (#4056)
- The issue where
SelectInput: @RylanBot (#4070)- The issue where clicking the
closableicon did not allow options to be cleared, which was caused by a fix in version1.16.0, has been fixed. - The issue where
onTagChangedid not function correctly whentagInputProps.tagProps.onClosewas passed as an argument has been fixed.
- The issue where clicking the
Text: The element no longer fails to hide simultaneously when thecopyableproperty of aTooltipis disabled. @RylanBot (#4067)Textarea: The logic for calculating thecountvalue now takes into account themaxcharacterormaxlengthsettings. @RylanBot (#4088)TreeSelect: The problem of the expand icon not changing direction when clicked in Safari has been resolved. @liweijie0812 (#4056)
🚧 Other Changes
Form: The TS type of the instance returned byuseFormhas been adjusted to prevent internal variables from being exposed. @RylanBot (#4050)Message: A newdisplayNameproperty has been added to this component. @TidySongS (#4074)
tdesign-react@1.16.3
🌈 1.16.3 2026-01-04
🐞 Bug Fixes
Dialog: 修复1.16.0的优化导致无法使用esc键关闭嵌套对话框的问题 @RylanBot (#4030)Popup: @RylanBot (#4057)- 修复
1.16.0版本的重构导致trigger为 SVG 等元素时弹出层无法出现的问题 - 修复
1.16.0版本的重构导致trigger被disabled依旧能触发弹出层的问题
- 修复
🐞 Bug Fixes
Dialog: Fixed an issue where the optimization implemented in version1.16.0prevented the use of theesckey to close nested dialog boxes @RylanBot (#4030)Popup: @RylanBot (#4057)- Fixed an issue where a refactor in version
1.16.0caused the popup layer not to appear when thetriggerelement was an SVG or similar type - Fixed an issue where a refactor in version
1.16.0allowed the popup layer to be triggered even when thetriggerelement was set todisabled
- Fixed an issue where a refactor in version
tdesign-react@1.16.2
🌈 1.16.2 2025-12-30
🐞 Bug Fixes
Popup:Select:
🐞 Bug Fixes
Popup:- Fixed an issue where the popup would unexpectedly close when
'trigger='hover'was enabled and external elements were dynamically updated, due to the restructuring in version1.16.0@RylanBot (#4046) - Fixed an issue where the position of the popup became unstable in certain scenarios after the restructuring in version
1.16.0@xiaody (#4046) - Improved the optimization for arrow offset when there is not enough space, implemented in version
1.16.0@RylanBot (#4042)
- Fixed an issue where the popup would unexpectedly close when
Select:- Fixed an issue where the
onClosecallback function ofvalueDisplaywould receiveundefinedas a value @RSS1102 (#4047) - Fixed an issue where values that were not included in the
optionslist could not be rendered when themultipleoption was enabled after version1.15.7@RylanBot (#4037) - Fixed an issue where, after the
filterableoption was enabled, the highlighted items in the keyboard navigation would not update even when the options changed @RylanBot (#4037)
- Fixed an issue where the
1.16.1
1.16.0
🌈 1.16.0 2025-12-15
🚨 Breaking Changes
MessagePlugin: 移除消息容器的id='tdesign-message-container--${placement}',之前依赖该属性的业务注意此变更⚠️ @RylanBot (#3820)
🚀 Features
- 支持
readonly的组件新增 APIreadOnly,与readonly效果一致。原有的readonly会被保留,未来版本将废弃,建议及时更换⚠️ @RylanBot (#3955) - 支持
.dark类名,丰富切换深色模式的方式 @liweijie0812 (common#2355) Dialog: 优化渲染阶段,避免子元素计算异常的问题,此前有在 Dialog 内进行复杂内容渲染的请注意此变更⚠️ @HaixingOoO (#3705)Form: 保留原始 HTML 效果,当输入框按下 Enter 键自动触发 submit 事件,如果需要拦截该行为,可以给输入框绑定onEnter={(e)=>e.preventDefault()},此前有依赖此内置特性请注意此变更⚠️ MessagePlugin: 新增开启和关闭时的动画效果 @RylanBot (#3820)Textarea: 支持countAPI,用于自定义计数元素的渲染 @RylanBot (#4003)ImageViewer:
🐞 Bug Fixes
Textarea: 更正status对应的初始值与 class 名为default,内部 class 进行了相应调整,之前有覆盖 tips 类名请注意此变更⚠️ @RylanBot (#4007)Avatar: 修复样式与设计稿不一致的问题 @liweijie0812 (common#2364)ConfigProvider: 修复tag.closeIcon不生效的问题 @RylanBot (#4004)Form: 修复初始化表单值时引入多余组件,导致未使用组件也被打包的问题 @RylanBot (#3965)Menu: 修复菜单选项默认边距和图标大小的问题 @liweijie0812 (common#2369)Select: 优化键盘操作过程中再次进行回车操作的使用体验 @uyarn (#3989)Tree: 修复子节点为自定义的 Input 等元素时,选中文本的高亮样式被隐藏的问题 @RylanBot (common#2370)MessagePlugin: @RylanBot (#3820)- 修复自定义
attach后,后续其它全局消息也被绑定到该节点中的异常 - 修复
closeAll无法关闭所有消息的异常
- 修复自定义
EnhancedTable: 修复子节点收缩时,表头全选状态异常的问题 @liweijie0812 (#3988)Table:Popup:PopupPlugin: 修复classPrefix不生效的问题 @RylanBot (#3940)
1.15.9
🌈 1.15.9 2025-11-28
🚀 Features
Cascader: 支持当valueMode为all或者parentFirst时,在filterable选项中显示非叶子节点 @lifeiFront (#3964)Popup: 新增多个组件实例方法,getOverlay用于获取浮层元素,getOverlayState用于获取浮层悬浮状态,getPopper用于获取当前组件 popper 实例,update用于更新浮层内容 @RSS1102 (#3925)Select: 支持通过键盘进行选项操作 @uyarn (#3969)Swiper: 支持cardScaleAPI,用于控制卡片的缩放比例 @RylanBot (#3978)
🐞 Bug Fixes
Cascader: 修复reserveKeyword不生效的问题 @RylanBot (#3984)Description: 修复无边框模式下itemLayout='vertical'的间距问题 @mikasayw (common#2321)Table: 表格内容未渲染时,设置dragSort相关拖动事件报错的问题 @lifeiFront (#3958)Title: 添加兜底机制,避免错误使用level导致页面直接白屏的问题 @RylanBot (#3975)Select: 修复使用backspace键删除标签时,没有触发onRemove的问题 @RylanBot (#3961)Slider: 修复浮点误差导致的滑块位置异常问题 @RylanBot (#3947)Swiper: 修复受控模式下current初始化错误的问题 @HaixingOoO (#3959)Upload: 修复不支持文件数组上传的问题 @GATING (common#2078)Calendar: @shumuuu (#3938)- 修复当
range为同一年内时,终止月份之后的月份选项没有正常禁用的问题 - 修复年份选项错误地使用了月份选项禁用范围判定逻辑的问题
- 修复当
Form: 修复readonly属性在不同组件中的兼容问题 @RylanBot (#3986)Form: @RylanBot (#3957)- 修复嵌套三层及以上的 FormList 相关方法失效的问题
- 修复
reset时没有触发onValueChange的问题 - 修复初始化调用
setFieldsValue时没有触发onValuesChange的问题 - 修复非动态表单场景下,
name为数字或含有数字时setFieldValues失败的问题 - 优化
key的生成,更新值与当前表单值相同时不刷新元素
Tree:- 修复过滤节点被意外禁用的问题 @RylanBot (#3984)
- 修复
setData没有自动触发 UI 刷新的问题 @RylanBot (common#2283)
TreeSelect: @RylanBot (#3984)- 修复过滤节点的父节点也可以被选中的问题
- 修复
blur时,输入框内容没有清空的问题