我们每月、每周不定期进行版本更新,持续优化产品体验。
甚至一天更新多次,因为当前版本并不稳定。
预计 0.8.0 版本之后将稳定版本减少较大的改动。
index.less中--ts-tree-selected-bg、--ts-tree-selected-color、--ts-tree-node-hover-bg及 11 个--ts-tree-checkbox-xxx变量迁移至theme.less/theme-dark.less统一管理handleDisplayStartBlur/handleVilateStartDate参数类型从string改为string | number | null,修复与 TsInput blur 事件类型不兼容的问题handleDisplayStartBlur/handleDisplayEndBlur/handleVilateStartDate/handleVilateEndDate参数类型从string改为string | number | null,修复与 TsInput blur 事件类型不兼容的问题_ts_table_parent_index存储原始数据索引导致多个父行折叠时只有第一个生效的问题,改为存储扁平化后的父节点索引size属性,用于统一控制表单内所有组件的尺寸,支持small、medium、large、x-largewithDefaults(defineProps<Type>(), {...})统一改为defineProps({...})运行时声明方式previewStyle字符串拼接/正则替换改为translateX + translateY + scale + rotateDeg四个独立 refscrollbarStyleCSS 变量赋值从CSSProperties+as any改为Record<string, string>+ 末尾as CSSProperties,消除 5 处as anySFCWithInstall局部定义,统一从../../types/install导入addField/removeField参数类型从any改为FormItem,与types.ts中FormContext接口定义一致imageElement从无泛型ref()改为ref<HTMLElement | null>(null)setInputRef参数从el: any改为el: Element | ComponentPublicInstance | nullchangeEvent参数从value: any改为value: CheckboxValueType[]handleSelect参数从option: any改为option: SelectOptionItemonVnodeMounted/Updated参数从vnode: any改为vnode: VNode,补充VNode导入style类型从any改为Record<string, string>change事件值从any改为(File | string)[]setFieldValue参数value: any改为value: unknown(同步更新types.ts接口)handleVilateStartDate/EndDate参数从value: any改为value: stringprops: any改为props: { id?: string; disabled?: boolean },精确声明实际使用的属性inject从{} as any改为null,配合isGroup用!!判断即可,无需Object.keys检查TsScrollbar绑定问题:v-model改为:modelValue+@update:modelValue,避免 computed 对象直接传入 Number 类型 propsingleLine属性补充说明:当任意列配置了showOverflowTooltip时,singleLine会被强制启用,此时即使设singleLine="false"也无法恢复多行换行AsyncValidatorDemo),演示回调式validator(rule, value, callback)与 async/await 风格的远程唯一性校验ts-popup-panel内置min-width样式,修复 UI 兼容性问题,宽度由widthprop 控制<keep-alive>内使用时deactivated再activated抛出insertBefore null错误:增加onDeactivated钩子销毁 Teleport 子树,onActivated恢复渲染app.component()注册数组中移除:TsToast 是命令式调用函数,不应注册为 Vue 组件,移除后消除 dev 模式下 "Do not use built-in or reserved HTML elements as component id: tr" 警告ariaLabel属性未在inputNumberDefaultProps中声明导致 Vue 运行时警告的问题value参数在 watch 状态下数据没有回显的问题modelValueprop 的require: true拼写错误为required: trueany的问题,改为string | number | boolean | null.textarea-content增加overflow: auto和max-height: 300px,覆盖通用.ts-input-content-wrap的overflow: hiddencheckbox/index.vue旧版 Dropdown 遗留文件误放在 checkbox 目录下,已删除rowClick事件,点击行时触发,回调参数为(row: T, index: number)useEscKeyHandlercomposable,消除 ~35 行重复的 ESC 键处理逻辑handleCalendarSelect使用年份+月份数值比较,简化跨年边界处理逻辑handleCaclDropdownWidth更名为handleCalcDropdownWidthts-grid-iamges拼写为ts-grid-imagesoriginStyle上的any类型断言onUnmounted改为onBeforeUnmount,与其他组件一致的清理时机silderTotal拼写错误为sliderTotalonUnmounted改为onBeforeUnmount,确保清理逻辑在 DOM 移除前执行modelValue为0或空字符串等 falsy 值时被错误 fallback 到value的问题,||改为??handleClick与原生<input>的change事件双触发导致状态翻转两次的问题handleCalcFitWidth中 calc() 表达式缺少右括号的问题handleClick与原生<input>的change事件双触发导致状态翻转两次的问题mousedown/mousemove中nowX == 0/nowY == 0应为赋值=的 bug(4 处)Math.random()在 setup 中调用导致的 SSR 水合不匹配问题,改为onMounted中初始化return导致后续空指针异常的问题normalizeOptions中 options 无匹配字段时value: undefined导致的键冲突问题useEscKeyHandler参数类型不兼容导致@tui/components构建失败的问题:layerId从string改为symbol,isTopLayer签名同步更新cloneVNode的key属性传入Ref<string>导致类型错误的问题,改为.valuevirtualScrollbarModelcomputed setter 中引用未定义变量totalRows的问题setTimeout(200)脆弱性,改为await nextTick()role="alert"和aria-live属性,提升无障碍支持aria-label/aria-invalid/aria-describedby属性,与 TsInput 保持一致onChange→change,getBase64→get-base64role="tablist"/role="tab"/aria-selected/aria-disabled属性和键盘左右方向键导航支持handleClear中的e.stopPropagation()防止清除后重新触发展开.ts-grid-iamges未同步更名为.ts-grid-images导致样式全部失效的问题onBeforeUnmount已改为onBeforeUnmount但 import 语句未同步更新hasConfiguredWidthimport--ts-table-expand-box-shoadow已更名为--ts-table-expand-box-shadow,请检查项目中是否使用了旧变量名并更新props定义和 import,确认不影响现有使用方式ts-grid-iamges修正为ts-grid-images,如有项目直接覆盖了旧类名样式,需同步更新v-model绑定选中值,适用于单选场景TableRow<T>类型,表示用户可见的行数据(T & { children?, id? })top插槽,支持下拉菜单顶部自定义内容TableDataItem<T>从Omit<TableSourceItem<T>, "_ts_table_*">改为TableRow<T>,消除交叉类型后Omit导致的结构性子类型不兼容问题size属性,支持large(默认)/medium/small三种尺寸placement为left-center/right-center等左右方向时弹层位置计算错误的问题filter功能导致的选中值无法正确显示的问题shikiCodeWithTheme、shikiRenderCodeByDedent工具函数ariaLabel属性,绑定aria-label,新增aria-busy关联loading状态canTeleportprops属性classprops属性CloseIcon的图标check-components.mjs新增组件name冲突检测shiki/@shikijs/*/dedent从dependencies移至peerDependencies(optional: true),不再打包进产物vitest.config.ts测试配置,__tests__/目录独立于构建产物ensureSingletonHost/ensureStackHost/pushSingletonToast/pushStackToast增加document守卫dependencies中多余的vue依赖,避免双实例问题filter功能导致的选中值无法正确显示的问题setFieldValue中prop in propKeys判断错误导致无法设置字段值的问题showZero逻辑反转导致值为 0 时不显示的问题document未定义导致崩溃的问题menuProps命名错误,重命名为modalPropsroundprops属性废弃, 统一采用borderRadius属性trigger属性,支持click / hover两种子菜单展开方式fontSize失效的问题text类型的按钮 active 背景色问题min/max/step/precision与controls/controlsPosition配置alert/confirm/prompt三种模式node-contextmenu事件,支持节点右键回调(node, event),便于接入业务自定义右键菜单ContextMenuDemo,并在事件文档中新增node-contextmenu说明etime更名为endTimeexpandDefault更名为defaultExpandedbody下的ts-modal-container/ts-drawer-container,避免嵌套使用时定位与遮罩受父级影响settle中的setTimeout(cleanup)未保存引用,closeAll时无法清除残留定时器的问题value更新后没有滚动的问题dom-position、countdown-ticker、schema-validator)nodePaddingLeft参数,支持通过 props 自定义节点行内padding-left缩进(兼容indent)safePadding默认值调整为true,默认开启更安全的内容留白safePadding参数,统一由内容与单元格样式策略控制内边距stack模式在单条 toast 离场时出现斜向漂移的问题,离场动画恢复为稳定的向上淡出extensions数据渲染异常v-model单选与checkedKeys勾选分离控制virtualScroll、virtualRowHeight、virtualOverscanbeforeClose关闭前拦截回调,支持返回boolean/Promise<boolean>date-value-wrap输入框未按format校验的问题expand项点击关闭异常(支持onClickPromise 结束后关闭)mouseup监听解绑失效导致的事件残留问题resize监听解绑参数不一致导致的监听残留问题document导致异常TsModal/TsDrawer叠层时层级偏低的问题,接入动态 z-index 管理format属性format属性expand插槽esc关闭功能及配置step属性,支持步进吸附(含小数步进)recalculate,支持手动重算定位hover-change属性nowrapprops属性解决换行问题size属性,支持small/medium两种尺寸,默认mediumprefix的回传参数 data 变更为 itemoffset计算逻辑prefix的回传参数 data 变更为 itemfontSize属性响应式丢失的问题#badge插槽改为#suffixtooltip渲染逻辑expand展开时堆叠的问题, 保持多个表格的展开状态唯一性slideRight的动画效果更加流畅value值为空字符串和0时无法选中的问题tooltipOffset值为 [0, -5] 时提示框位置偏移不正确的问题fieldNames属性的类型支持ts-popup-panel的插槽渲染逻辑expand的插槽渲染逻辑value属性#icon的 slot 插槽不生效的问题type属性expand的渲染问题, 优化样式采用fixedfallback导致的默认效果异常的问题value属性不生效的问题minHeight属性focus时的边框样式主题适配FormItem的error校验状态placeholder提示vue.use与install注册问题, 解决部分组件全局注册失效的问题progressSize属性的默认值radius样式clickableprops 属性positionprops 属性来满足不同的需求install注入问题menu-group菜单组件激活的样式问题holiday样式优化change事件回调参数优化sizeprops 属性统一规范sizeprops 属性统一规范change事件触发时机错误的问题error状态失效的问题error状态失效的问题filterable、multipleprops 属性, 支持搜索过滤功能, 支持多选功能scroll-inline宽度未对齐的问题holiday的tooltip信息丢失问题value属性, 用于受控方式切换选项loading状态下错误展示的问题SSR状态的优先级问题currentDay错误的问题change事件触发时机的问题domain属性limitErrorText属性valueprops 属性,用于change事件非受控方式切换菜单loading插槽SSR时a标签的点击范围过小导致切换菜单失效的问题append插槽,用于在末尾追加内容fallback导致的默认效果异常的问题SSR友好懒加载支持dropZone属性来支持拖拽上传layout、gapprops 属性error为false状态导致的placeholder默认值问题typeprops 属性默认值为defaultTsButton文档提供自定义颜色的演示CSS-in-JS的局部样式覆盖CSS-in-JS的局部样式覆盖shadowprops 的支持disabled的支持active状态内部变更的问题v-model数据超出min,max的问题columns:width参数自动适配autoFitdelayTime替换为duration, 语义更清晰options的disabled样式size尺寸size尺寸size尺寸expandByPath折叠和展开子项imgList改为list,使命名更统一更规范ts-radius样式closeable属性 , 新增close关闭事件column的宽度问题v-model导致的子项菜单点击后被折叠收起的问题column的宽度问题autoFitOnDataChange、alignprops 属性v-model数据的响应式渲染resize功能change回调的问题path路径为空导致的展示错误clearable功能,支持清空输入框clearable功能,支持清空输入框columns宽度不正确的问题start功能,支持开始倒计时dark模式主题, 优化了light的主题样式dark主题signLineprops 属性, 默认值为falsedark主题autoFit:false时 columns 宽度不正确的问题badge插槽,用于自定义徽标dependenciesscrollInline:true时的滚动问题expand图标fixed-right的位置样式suffix-icon插槽,用于拓展图标的使用font-awesome的依赖Highlight的移除expand图标fixed-right的样式位置,更加美观border样式的表格内容展示fill-content属性为scrollable,根据内容超出滚动语义更清晰size:mini的属性,用于设置小型按钮的样式gap属性,用于设置间距,默认为3pxpadding问题导致的内容被遮挡的问题prefix插槽来拓展图标的使用及自定义previewable、resetable、widthprops 属性cursor属性,用于设置鼠标样式tooltipprops属性控制日历的提示borderprops,提供日常的使用体验prefix插槽来拓展图标的使用及自定义menuPath改为path, 使命名更一致更规范box-sizing: border-box;mode属性为typesize适配新的样式customStyle属性,用于自定义样式dropdownBorder属性, 用于是否显示下拉边框border样式wave的colorprops 属性支持修改颜色status、loading的逻辑loading、status属性shadowed属性已废弃,请使用shadow属性代替