简体中文 | English
- 组件
AeTable:可编辑列editProps新增支持动态_v_componentProps,可基于当前列、行表单模型、表格外部上下文与编辑状态生成组件属性。
- 组件
AeUpload:图片卡片模式空态文本为不同尺寸补充明确的line-height样式,使占位文本与对应字号保持垂直对齐。 - 组件
AeDialog:内部布局样式改为直接子元素选择器(> .el-dialog__header、> .el-dialog__body、> .el-dialog__footer、> .el-scrollbar),避免弹窗嵌套时外层样式误作用于内层弹窗结构。 - 组件
AeDrawer:对> .el-drawer__header、> .el-drawer__body、> .el-drawer__footer做同样调整,修复抽屉嵌套时的布局与内边距异常。
- 组件
AeUpload:图片卡片模式下禁用且无文件时,空态占位图标由自定义AeIcon(streamline 图标集)改为 Element Plus 内置Picture图标(经el-icon渲染,尺寸与pictureFileIconSize一致),与列表项图标风格统一,并减少对第三方图标集的依赖。
- 组件
AeTable操作列「更多」下拉(typeProps.actionDropdown)新增可配置项:icon、iconSize用于自定义触发按钮图标与尺寸;buttonProps用于向触发ElButton透传属性。 - 组件
AeForm新增内置容器组件Disclosure(折叠披露容器):默认折叠隐藏子表单项,支持标题/副标题与展开收起高度动画;可通过divider、dividerPosition(left/center/right)、dividerStyle(solid/dashed/dot)配置标题区分割线;支持toggleable、expand、toggleText、collapsedText等属性。 - 国际化新增
disclosure.toggleText、disclosure.collapsedText,用于折叠容器展开/收起文案。
- 组件
AeTable在计算表头列可编辑样式类名时,isEditable现向column.editable函数传入占位row与index,避免未定义参数导致的异常或与单元格判断不一致。 - 组件
AeTable操作列:当下拉折叠区仅包含一条操作时无法正常显示,现在已改为只有一个下拉按钮时直接渲染为该操作的按钮,不再使用「更多」下拉。
- 组件
AeTable内部ElButtonProps类型补充dashed、color及 Element Plus 版本说明(dashed>2.13.3,color>2.13.7),与ElButton能力对齐。 - 组件
AeForm内置容器Group新增border、bg、decor配置:border/bg可分别关闭边框与背景样式;decor可在主标题前显示主题色装饰条。
- 全局字典类型
DictItem的value由string扩展为string | number | boolean | null。 - 组件
AeTable通过tableImports加载组件时,对控制台的日志输出进行归一化合并。 - 组件
AeForm通过formImports加载组件时,对控制台的日志输出进行归一化合并。 - 组件
AeTable的Pagination属性新增支持null,并修正了相关处理逻辑。 - 组件
AeTable的column.editable现已正确支持透传row,index参数实现行编辑状态动态化。
- 组件
AeForm通过formImports加载组件所依赖的FormImportItemConfig可配置项新增needClearable、needInputPlaceholder、needSelectPlaceholder、needOptions,便于您引入组件的组件与内置组件保持相同的自动生成占位文本、自动添加清空按钮、自动处理选项的能力。 - 组件
AeTable通过tableImports加载组件所依赖的TableImportItemConfig可配置项新增needInputPlaceholder、needSelectPlaceholder,便于您引入组件的组件与内置组件保持相同的自动生成占位文本能力。 - 组件
AeUpload在被禁用时,如果列表无任何文件,会显示暂无文件占位样式块。 - 组件
AeTable的editProps.componentProps新增支持vBinds属性,用法与AeForm对齐。 - 全局校验规则新增
isAreaPhone实现带区号的手机号码校验。
- 组件
AeTable在使用type=dict时, 现在会自动识别value是否为数组, 如果是数组则会自动拼接每个选项的label
- 组件
AeTable新增total属性,用于设置分页器的总条数。
- 组件
AeText移除默认font-size,优化高亮块的标签样式。
- 新增组件
AeComboInput:组合输入组件,支持自定义组合模板,专用于需要多变量组合的文本值输入。 - 组件
AeForm已内置引入AeText和AeComboInput组件。 - 组件
AeIcon已支持自定义图标集配置,详见自定义图标集
- 修复 global.d.ts 未引入
AeText的问题。 - 组件 [AeForm] 优化
setInsideSlots函数,现已支持插槽参数传递功能。- insideRenders:渲染函数现在可以接收插槽自身携带的参数(作用域插槽参数),参数会追加到原有的四个参数之后。
- insideSlots:插槽数据结构优化,始终将
formModel.value包装为form属性,并与插槽参数合并传递,保持 API 一致性。 - 类型定义:更新
FormSchemaDomFn类型,新增slotProps剩余参数支持。 - 向后兼容:完全兼容现有代码,无需修改即可正常工作。
- 至
0.2.1版本起,不再合并类型(rollupTypes)发布。以便于在 IDE 中获得更好的类型追踪。
- 更新
InsidePropsSlots和InsidePropsRenders类型注释,添加作用域插槽参数使用示例。
-
新增组件
AeText:增强文本组件,支持前置图标、圆点、引用块样式、文本高亮匹配及高亮文本点击事件。- 文本截断与展开:支持单行或多行截断,可选展开/收起功能
- 复制功能:一键复制文本到剪贴板,支持自定义成功提示
- 图标自定义:支持
iconClass和iconStyle自定义图标样式 - 圆点样式优化:圆点现在带有渐变边框和光晕效果,支持悬停动画
-
组件
AeForm新增controlled属性,用来决定表单值是否“受控”。默认false(非受控)。- 受控模式(
controlled: true):双向绑定- 必须用
v-model:model绑定表单对象。 - 表单直接读写你传入的
model,不再维护内部副本。 - 不需要
setValues/getFormModel做同步。
- 必须用
- 非受控模式(默认):单向初始化
- 你传入的
model只作为初始值。 - 表单内部维护自己的数据。
- 取值用
getFormModel,更新用setValues/setValue。
- 你传入的
- 怎么选:
- 优先用非受控:更稳、更好控,也避免多个组件同时改同一个对象导致覆盖/顺序冲突,且不会“悄悄改脏”原始数据。
- 内外同步难做、手动同步成本高时,用受控:直接绑定,省去同步逻辑。
- 受控模式(
-
组件
AeDialog新增close事件,用于在窗口关闭时通知父级。 -
组件
AeForm现已支持在FormItemProps中配置addClass属性,用于向ae-form-item元素添加自定义类名。
- 组件 [AeForm] 在自动生成占位文本(
autoPlaceholder)功能中,未对InputTag组件进行适配,现已修复。 - 组件 [AeForm] 使用
props.schemas替代useForm中的schemas参数, 避免组件的schemas参数在某些情况下丢失响应式。 - 优化组件 [Table] 的校验逻辑。
- 优化
install函数, 避免重复注册, 为未命名组件添加命名,该改动用于解决控制台的重复注册警告。
- 组件 [AeForm] 目前未对动态注册的组件适配
autoPlaceholder、auto set clearable等功能,后续将在注册配置中添加。
- 组件 [AeForm] 已全面支持
desginable模式,并新增了desginableDirectives属性和designableColProps属性,在desginable模式激活时,所有表单组件同级将支持design插槽,用于渲染组件设计工具栏, - 组件 [AeForm] 过去使用
form模式且采用labelPosition:left或right时,由于没有充足的空间显示,因此不支持设置subLabel,现在已支持,subLabel将会显示在Tooltip标签中。
- 修正
rules.ts中校验身份证号码的正则表达式错误。 - 组件 [AeForm] 使用
desc模式时,描述列的宽度属性(width,minWidth,labelWidth)从formItemProps读取时存在冲突,已迁移至descriptionsItemProps,避免冲突。
- 组件 [AeForm] 使用
desc模式时,关于描述列的属性配置从layoutProps迁移至descriptionsItemProps,以便配置结构更清晰和规范。
- 组件 [AeForm] 新增
change事件,在表单字段值变化时触发,包含key、value和oldValue参数。 - 组件 [AeForm] 新增
init事件,在表单初始化完成时触发。 - 组件 [AeForm] 为描述块标签添加副标题支持,优化样式展示。
- 组件 [AeForm] 新增锚点导航渲染钩子函数,支持自定义锚点导航渲染。
- 组件 [AeForm] 修复组件未声明的
change事件问题。 - 组件 [AeForm] 修复描述项必填样式拼接问题。
- 组件 [AeForm] 修复无标题项左边距和标签宽度问题。
- 组件 [AeForm] 修正锚点属性类型及代码格式问题。
- 组件 [AeForm] 修改锚点组件属性类型定义。
- 组件 [AeForm] 自动初始化字段值时允许
Descriptions类型容器。 - 组件 [AeUpload] 优化文件上传流程的异常处理和代码结构。
- 修复核心模块中 Element Plus 组件的已知 slot 警告。
- 修复 UnoCSS 配置中 preflight 的 CSS 变量注入问题。
- 修复表单示例卡片的显示问题。
- 示例页面添加表单导航锚点功能演示。
- 组件 [AeForm] 新增锚点导航功能,支持表单字段快速定位。
- 组件 [AeForm] 新增锚点导航渲染钩子函数,支持自定义锚点渲染逻辑。
- 组件 [AeForm] 修复无标题项左边距和标签宽度问题。
- 组件 [AeForm] 修正锚点属性类型及代码格式问题。
- 组件 [AeUpload] 优化文件上传流程的异常处理和代码结构。
- 修复核心模块中 Element Plus 组件的已知 slot 警告。
- 修复 UnoCSS 配置中 preflight 的 CSS 变量注入问题。
- 示例页面添加表单导航锚点功能演示。
- 组件库核心架构重构,为所有组件统一添加
withInstall安装函数,支持组件独立安装和全局注册。 - 新增
utils/install.ts工具模块,封装withInstall函数和SFCWithInstall类型定义。 - 优化组件导出方式,所有组件现在统一使用
Ae前缀导出(如AeForm、AeTable等),同时保持向后兼容。 - 重构
src/index.ts中的组件注册逻辑,使用批量app.use方式安装所有组件。 - 优化 Vite 构建配置,改进全局类型声明生成逻辑,新增独立的
global.d.ts文件。
- 修正全局类型文件路径,从
./dist/global.d.ts调整为./global.d.ts,确保类型定义正确加载。 - 在
package.json的files字段中添加global.d.ts,确保发布时包含该文件。
- 组件 [AeForm] 新增
scrollToKey方法,支持滚动到指定字段位置。 - 组件 [AeForm] 新增
scrollRef属性,用于指定滚动容器,实现更灵活的滚动定位。 - 组件 [AeForm] 在表单验证失败时自动滚动到第一个错误字段,提升用户体验。
- 新增
FormExpose接口和FormInstance类型定义,完善表单组件实例类型系统。 FormExpose接口包含完整的表单操作方法:初始化、获取/设置表单值、批量操作字段、验证及重置等。
- 组件 [AeForm] 修复表单滚动定位逻辑,修正
useForm中scrollRef的容器获取逻辑。 - 组件 [AeForm] 优化错误提示逻辑,确保字段标签正确显示。
- 组件 [AeEditor] 修复类名缺失问题。
- 将
FormInstance类型导出至独立文件src/components/Form/src/types/instance.ts。 - 更新
TableInstance类型,合并TableExpose接口定义。 - 优化 Vite 配置中的组件导入和全局类型声明生成逻辑。
- 更新示例代码 [FormExample] 以支持新的滚动功能。
- 组件 [AeForm] 新增表单组件实例类型定义,提供完整的类型支持。
- 组件 [AeDialog] 调整对话框样式以确保正确显示,为滚动条添加盒模型边框计算。
- 组件 [AeDialog] 强制设置对话框内边距为 0 以避免布局偏移。
- 组件 [AeDialog] 修复
fullscreen配置错误。 - 组件 [AeDialog] 修复关闭按钮无效问题。
- 修复 UnoCSS 配置问题。
- 移除
vite.config.demo.ts配置文件,简化构建配置。
- 添加
element-plus-beauty.css样式文件支持,现在您可以为AeForm添加class: "element-plus-beauty"来启用该样式类。 - 组件库已支持全局一次性引入表单扩展组件和表格扩展组件,您可以在
app.use(AdvancedEleUI, { formImports: [], tableImports: [] })参数中传入扩展组件配置,来启用全局一次性引入。 - 组件 [AeTable] 中关于
TableSchemaFn中已增加参数editable,便于您基于表格可编辑状态实现动态属性。
- 未避免与组件事件命名方式混淆,组件 [AeUpload] 原属性
onDownload已更名为downloadFile。
- 组件 [AeForm/Group] 未支持暗黑主题,现已修复背景色和边框色,遵循
element-plus的样式变量。 - 在组件 [AeForm] 中使用
AeTable时,editable属性未根据组件的disabled实现响应式,目前已修正。 - 组件 [AeTable] 对可编辑组件进行
v-model双向绑定时代码错误,已修复。
- 示例页
App.vue已支持主题切换。
- 组件库入口函数
install增加了locale配置项,以实现组件库的全面国际化功能。现在默认会加载zh-CN语言,若您期望使用其他语言可设置为en-US。您也可以通过customLocale来自定义配置。本项目所有静态文字及控制台文字都已支持国际化。 - 依赖插件
dayjs也会根据当前的组件库语言类型切换语言。 - 新增组件 [AeDialog],基于
el-dialog二次封装,对样式进行优化,内容区优化滚动,支持拖拽、全屏切换,自定义标题栏按钮。 - 新增组件 [AeDrawer],基于
el-drawer二次封装,对样式进行优化,内容区优化滚动,支持自定义标题栏按钮。 - 新增组件 [AeTabs] 和 [AeTabPane],基于
el-tabs二次封装,内容区启动flex布局,优化渲染。
- 组件 [AeTable] 进行了一次小规模重构,将列的渲染过程进行解耦,便于后期扩展和代码可读性,对原有功能无影响。
- 全局常量
AUTO_RULES_MAP已移除,为了支持国际化,现在已改为getAutoRulesMap方法。
- 组件 [AeEditor] 在
disabled:true时且内容为空时, 宽度异常, 现在已添加width: 100%来解决。 - 组件 [AeTable]
watchPage()函数未在组件销毁时销毁, 可能存在潜在的内存泄露风险, 现在已修复。 - 组件 [AeForm] 由于
tree/findNode函数对入参tree进行了展平处理,破坏了入参的只读性,导致AeForm组件在校验时异常修改了原始schemas,现在已重构findNode函数修复该问题。 - 组件 [AeTable] 在监听表单结构化变化时(
watch(schemasFieldsHash))实现增量更新初始化字段的策略进行了简化, 避免监听过于复杂的数据结构。
- 文档 [README.md] 中已增加关于国际化功能的具体用法和说明。
- 页面 [DialogExample] 中已增加关于
AeDialog组件的用法。 - 页面 [DrawerExample] 中已增加关于
AeDrawer组件的用法。 - 页面 [TabsExample] 中已增加关于
AeTabs组件的用法。
- 组件 [AeTable] 增加了
imports属性,用于自定义引入可编辑组件。 - 组件 [AeTable] 增加了
TableFormComponentName类型,现在已支持大部分element-plus中的输入性组件。 - 组件 [AeTable] 添加了
editProps.formItemProps属性,可配置rules或autoRules实现组件校验。
- 组件 [AeForm] 的
rules.ts相关类型定义已迁移至types/rules.ts, 以便于复用在AeTable组件中。 - 组件 [AeTable] 的
editProps.rules属性已迁移至editProps.formItemProps.rules,与AeForm的FormSchema.formItemProps保持一致。
- 修正文档 [ReadMe] 中关于
<AeTable>的用法错误,将data替换为v-model。 - 修正页面 [QuickStartExample] 关于
<AeTable>的用法错误,将data替换为v-model。
- 添加了
element-plus-beauty.css样式类,用于优化原组件在表单禁用场景下的展示效果。您可以通过为AeForm添加class: "element-plus-beauty"来启用该样式类。 - 组件 [AeForm] 增加了
size属性,用于设置表单和描述块尺寸。 - 组件 [AeForm] 已支持
type: desc模式,该模式下将基于el-descriptions实现带边框的描述表单。该模式下所有表单组件都应该被type: Descriptions的描述块组件包裹,未被包裹的组件将被忽略。 - 组件 [AeForm] 的
schemaProps属性新增了formItemProps.align,formItemProps.labelAlign用于全局配置描述列属性。 - 组件 [AeForm] 的
schemaProps属性新增了descriptionsProps用于全局配置所有描述块属性。 - 组件 [AeForm] 的
schemaProps属性新增了componentProps.setPlaceholderInDisabled可用于设置表单被全局禁用时的占位文本。 - 组件 [AeForm] 的
schemas属性类型接口FormSchema新增了DescriptionsSchema类型接口,当您设置type: Descriptions时即可创建描述块组件。
- 正式修复了组件全局类型,现在您可以在
tsconfig.json中添加"compilerOptions": { "types": ["advanced-ele-ui/global"] }来激活IDE对全局组件的识别。 - 组件 [AeEditor] 在更新
modelValue会强制触发focus,现在已去除。
- 组件 [AeForm] 原属性
dataSource已更名为excontext,以便更符合命名规范。 - 组件 [AeTable] 原属性
dataSource已更名为excontext,以便更符合命名规范。
- 页面 [FormExample] 已增加当
AeForm的属性为type: desc时的描述表单示例。
- 重构了所有组件命名空间,将
Zw前缀替换为Ae前缀,并相应更新替换了所有zw-*前缀的样式和类型接口。 - 重构了所有组件导出,统一了组件类型命名,现在您可以从组件库内自由导出类型接口。
- 重构了编译流程;现在可正确编译全局组件类型及其它全局类型,并排除了组件库内部的全局类型文件。
- 将默认的
README.md替换为英文版本并添加了语言切换;原始的中文版本已移至README.zh.md - 将
CHANGELOG.md转为英文并重构了变更日志。
## 0.0.0 - 2025-X-X
### 新增
* 组件 [XXX] do something...
* do something...
### 修复Bug
* 组件 [XXX] do something...
* do something...
### 重构
* 组件 [XXX] do something...
* do something...
### 文档
* do something...