Skip to content

组件 API 总览 ​

本页集中列出组件库顶层组件的全部公开属性。组件类型以源码中的 TypeScript 定义为准;— 表示没有默认值或该属性为必填项。

AsyncSelect ​

属性类型默认值说明
modelValuestring | number | null | Array<string | number>—当前选中值
multiplebooleanfalse是否多选
fetcherAsyncSelectDataFetcher—分页、搜索和回显取数函数
optionsRecord<string, any>[][]本地固定选项
dictCodestring—字典编码;未传 fetcher 时使用
columnsColumnsItem[][]弹窗列表列配置
valueKeystring'id'选项值字段名
labelKeystring自动取第一列或 'label'选项标签字段名
subtitleKeystring''副标题字段名
placeholderstring内置文案占位文案
disabledbooleanfalse是否禁用
dialogTitlestring内置文案弹窗标题
perPagenumber20下拉与弹窗分页条数

BaseCard ​

BaseCard 没有自定义 Props。除 shadow 由 setupDisguise({ cardShadow }) 控制外,其他属性、事件和插槽全部透传给 Element Plus ElCard。

CrudPage ​

属性类型默认值说明
fieldsCrudPageItem[][]字段元数据
dataRecord[] | TableEntityDataFetcher[]表格数据或异步取数函数
rowKeystring'id'行唯一字段
actionsTableEntityActionName[]按处理函数推导行操作按钮
pushToolbarActionsCrudPageToolbarAction[][]追加工具栏操作
createTitlestring'新增'新增抽屉标题
editTitlestring'编辑'编辑抽屉标题
viewTitlestring'详情'查看抽屉标题
addButtonTextstring'新增'新增按钮文案
permissionCodestring—权限编码前缀
showImportbooleantrue是否显示导入
showExportbooleantrue是否显示导出
importUrlstring | ImportDialogUrlConfig—导入接口配置
exportUrlstring—导出接口地址(当前未接入,导出请用 exportConfig)
defaultValuesRecord<string, any>{}新增默认值
confirmDeletebooleantrue删除前是否确认
deleteConfirmTextstring | ((row) => string)'确定要删除这条数据吗?'删除确认文案
tablePropsPartial<TableEntityProps>{}表格属性
searchFormPropsCrudPageSearchFormProps{}搜索表单属性
drawerPropsPartial<DrawerFormPageProps>{}抽屉属性
onCreate(values) => boolean | void | Promise—新增处理函数
onUpdate(values, row) => boolean | void | Promise—编辑处理函数
onDelete(row) => boolean | void | Promise—单行删除处理函数
onBatchDelete(rows) => boolean | void | Promise—批量删除处理函数
exportConfigExportConfig—自定义导出配置
resolveFormValues(mode, row?) => Record | Promise<Record>—打开编辑或详情前补充数据

CrudPageSearchFormProps ​

collapsedRows、columns、disabled、labelAlign、labelPosition、labelWidth、schema、showActions,含义与 SearchForm 同名属性一致。

ExportConfig ​

字段类型说明
urlstring导出下载地址
namestring兜底文件名,默认 export.xlsx
methodstring预留字段,当前导出固定走 requestClient.download
onExport({ rows, queryParmas }) => Record返回随请求提交的参数;rows 为勾选行,queryParmas 为当前搜索条件(字段名与类型定义一致)

DialogList ​

属性类型默认值说明
visibleboolean—弹窗显隐
modelValueany | any[]—当前选中值
multiplebooleantrue是否多选
fetcher(params) => Promise<{ items, total }>—分页取数函数
columnsColumnsItem[][]列配置
rowKeystring'id'行唯一字段
dialogTitlestring''弹窗标题
dialogWidthnumber | string'960px'弹窗宽度
tableHeightnumber420表格高度
perPagenumber20每页条数
filterParamsRecord<string, any>{}作为 params 传给 fetcher 的额外筛选条件

DictTag ​

属性类型默认值说明
codestring''字典编码
dictTypestring''code 的兼容别名
valuestring | number | nullnull字典值
labelstring | number | nullnull直接指定显示文字,优先于字典结果
colorstring | nullnull语义色或 CSS 颜色

DisguiseIcon ​

属性类型默认值说明
iconstring''图标名
classNamestring'disguiseicon'字体图标类名前缀

其余属性透传给 ElIcon。

DrawerFormPage ​

属性类型默认值说明
modelValuebooleanfalse抽屉显隐
titlestring''标题
breadcrumbstring—标题上方路径文字
statusTextstring按模式生成标题右侧状态
mode'create' | 'edit' | 'view''create'表单模式
schemaSchemaFormItem[][]字段配置
formValuesRecord<string, any>{}表单值
sizenumber | string'560px'普通模式宽度
direction'btt' | 'ltr' | 'rtl' | 'ttb''rtl'打开方向
fullscreenButtonbooleantrue是否显示全屏按钮
fullscreenbooleanfalse是否全屏
normalColumnsnumber表单列数普通模式列数
fullscreenColumnsnumber至少 3全屏模式列数
showFooterbooleantrue是否显示底部操作栏
showCancelButtonbooleantrue是否显示取消按钮
showSubmitButtonbooleantrue是否显示提交按钮;查看模式始终隐藏
cancelTextstring'取消'取消文案
submitTextstring'确定'提交文案
loadingbooleanfalse内容加载状态
submittingbooleanfalse提交状态
disabledbooleanfalse是否禁用整表
destroyOnClosebooleanfalse关闭后是否销毁内容
closeOnClickModalbooleantrue点击遮罩是否关闭
closeOnPressEscapebooleantrueEsc 是否关闭
appendToBodybooleantrue是否挂载到 body
lockScrollbooleantrue是否锁定页面滚动
drawerPropsRecord<string, any>{}透传给 ElDrawer
schemaFormPropsDrawerFormSchemaProps{}透传给 SchemaForm

FileUpload ​

属性类型默认值说明
modelValuestring | AttachmentData | AttachmentData[]''文件值
disabledbooleanfalse是否禁用
maxSizenumber2000单个文件大小上限,MB
acceptstring[][]允许的文件类型,[] 表示不限制;支持 image/* 通配和 .pdf 扩展名
widthnumber200文件项宽度,px;预留属性,当前版本未参与样式计算
heightnumber40文件项高度,px;预留属性,当前版本未参与样式计算
showPreviewbooleantrue是否显示预览
showDownloadbooleantrue是否显示下载
showRemovebooleantrue是否显示删除
fileNamestring—自定义显示文件名
placeholderstring内置文案(点击上传)占位文案
selectedbooleanfalse是否显示选中状态
errorMessagestring''错误状态文案
maxCountnumber1最大文件数;大于 1 时启用多文件模式

ImageUpload ​

属性类型默认值说明
modelValuestring''图片 URL
acceptstring[]['image/png', 'image/jpeg', 'image/svg+xml', 'image/webp']允许的 MIME 类型(精确匹配)
disabledbooleanfalse是否禁用
heightnumber96预览高度,px
maxSizenumber5大小上限,MB
widthnumber96预览宽度,px

ImagesView ​

属性类型默认值说明
imagesstring[][]图片地址
sizenumber80缩略图边长,px
maxStacknumber3最大叠放层数
offsetnumber6每层偏移量,px

ImportDialog ​

属性类型默认值说明
modelValuebooleanfalse弹窗显隐
apistring—导入上传接口
templateUrlstring—模板下载接口
templateMethod'GET' | 'POST''POST'模板下载方法
templateNamestring'导入模版'下载的模板文件名
titlestring内置文案标题
defaultModeImportDialogMode'create'默认导入模式
modesImportDialogModeOption[]内置新增、更新导入模式列表;当前无选择入口
acceptstring[]['.xls', '.xlsx']允许的扩展名
maxSizenumber5文件大小上限,MB
maxPreviewCountnumber100预览汇总文案中的最大统计行数
tipsstring[]内置文案上传提示
importDescstring—导入说明文字,未传不显示
skipStepsArray<'preview' | 'mapping'>[]跳过的流程步骤,跳过后上传确认即直接导入
targetFieldsImportDialogTargetField[][]目标字段
parseFile(payload) => Promise<ImportDialogParseResult>—自定义解析
submitImport(payload) => Promise<ImportDialogSubmitResult>—自定义提交
resetOnClosebooleantrue关闭后是否重置

事件:update:modelValue、downloadTemplate、fileChange、success、error、cancel。插槽:desc-title、desc-content、after-upload。无暴露方法。

PictureUpload ​

属性类型默认值说明
modelValuestring | string[] | AttachmentData | AttachmentData[]''图片值;为数组时进入多图模式
disabledbooleanfalse是否禁用
maxSizenumber5单图大小上限,MB
acceptstring[]['image/*']允许的图片类型
widthnumber96预览宽度,px
heightnumber96预览高度,px
showPreviewbooleantrue是否显示预览
showDownloadbooleantrue是否显示下载
showRemovebooleantrue是否显示删除
selectedbooleanfalse是否显示选中状态
errorMessagestring''错误状态文案
baseFolderstring''OSS 保存目录,相对 attachment/v3
addWatermarkboolean—是否给图片加中心水印
maxCountnumber1最大图片数;大于 1 或 v-model 为数组时启用多图模式
cropPictureCropOptions—上传前裁剪配置;支持开关、固定比例、结果格式和输出质量
dimensionsPictureDimensionOptions—最终图片固定或最小/最大像素尺寸限制

PictureCropOptions:enabled?、aspectRatio?、aspectRatios?、mimeType?、quality?。aspectRatios 的元素格式为 { label: string, value: number | null },其中 null 表示自由比例。

PictureDimensionOptions:width?、height?、minWidth?、minHeight?、maxWidth?、maxHeight?。

插槽:placeholder(或默认插槽)、loading、picture。详见 PictureUpload。

RichTextEditor ​

属性类型默认值说明
modelValuestring''HTML 内容
editablebooleantrue是否可编辑
placeholderstring内置文案占位文案
maxHeightstring'400px'编辑区域最大高度
richTextToolsRichTextTool[][]自定义工具
toolContextRecord<string, unknown>{}传给自定义工具的额外上下文

事件 update:modelValue(html: string);插槽 toolbar-append;暴露 editor、clearFormat()。详见 RichTextEditor。

SchemaForm ​

属性类型默认值说明
modelValueRecord<string, any>{}表单数据
columnsnumber1栅格列数
disabledbooleanfalse是否禁用整表
underlinebooleanfalse输入框是否只显示下边框
labelAlign'center' | 'left' | 'right'—标签文字对齐
itemGapnumber | string30表单项纵向间距
groupGapnumber | string0分组额外间距
labelGapnumber | string20标签与控件间距
labelPosition'left' | 'right' | 'top''top'标签位置
labelWidthnumber | string'auto'标签宽度
loadingbooleanfalse加载状态
mode'create' | 'edit' | 'view''create'表单模式
schemaSchemaFormItem[][]字段配置

事件 update:modelValue(values)、field-change(field, value);动态插槽(名等于字段 prop,仅 type: 'slot' 渲染)参数为 { field, value, disabled, updateValue };暴露 validate()、clearValidate()、resetFields()、getValues()。详见 SchemaForm。

SchemaForm 字段属性 ​

属性类型默认值说明
typeFieldType—控件类型
propstring—表单字段名
labelstring—标签
componentComponent | string | config—自定义组件
copyableboolean跟随 readonly只读时是否显示复制按钮
defaultValueany—默认值
disabledboolean | (context) => booleanfalse是否禁用
hideOnCreatebooleanfalse新增时隐藏
hideOnEditbooleanfalse编辑时隐藏
hiddenboolean | (context) => booleanfalse是否隐藏
newRowbooleanfalse是否另起一行
placeholderstring自动生成占位文案
propsRecord | (context) => Record{}底层控件属性
readonlybooleanfalse是否只读
requiredboolean | (context) => booleanfalse是否必填
rulesFormItemRule[][]校验规则
spannumber按列数均分24 栅格占位
tipstring—控件下提示
translateConfigTranslateConfig—多语言编辑配置
apiOptionsApiFieldOptions—异步选择配置
dictCodestring—字典编码
optionSource'api' | 'dict' | 'static'—选项来源
optionsFieldOption[] | resolver—静态或动态选项

SchemaForm 分组属性 ​

属性类型默认值说明
type'group'—固定值
labelstring—分组标签
childrenSchemaFormGroupChild[]—子字段
descriptionstring—锚点分组说明
disabledFieldConditionfalse整组禁用
hideOnCreatebooleanfalse新增时隐藏
hideOnEditbooleanfalse编辑时隐藏
hiddenFieldConditionfalse是否隐藏
anchorbooleanfalse是否加入锚点导航
newRowbooleanfalse是否另起一行
spannumber2424 栅格占位
tipstring—辅助提示

SearchForm ​

属性类型默认值说明
modelValueRecord<string, any>{}搜索值
collapsedRowsnumber2收起时显示行数
columnsnumber4列数
disabledbooleanfalse是否禁用
labelAlign'center' | 'left' | 'right''left'标签文字对齐
labelPosition'left' | 'right' | 'top''left'标签位置
labelWidthnumber | string'auto'标签宽度
mode'create' | 'edit' | 'view''create'字段联动模式
schemaSearchFormItem[][]搜索字段
showActionsbooleantrue是否显示搜索、重置和展开按钮

TableEntity ​

属性类型默认值说明
columnsColumnsItem[][]列配置
dataRecord[] | TableEntityDataFetcher[]数据或异步取数函数
heightnumber630表格高度
rowHeightnumber40行高
cachenumber1可视区外预渲染行数
widthnumber容器宽度表格宽度
selectablebooleantrue是否可选择
multiplebooleantrue是否多选
rowKeystring'id'行唯一字段
selectedKeysany[][]已选 key
treebooleanfalse是否树形表格
treeChildrenKeystring'children'子节点字段
expandColumnKeystring''展开列字段
expandedRowKeysTableEntityRowKey[]—受控展开行
defaultExpandedRowKeysTableEntityRowKey[][]默认展开行
indentSizenumber12树节点缩进
iconSizenumber12展开图标尺寸
totalnumber异步结果或 0总条数
per_pagenumber100每页条数
current_pagenumber1当前页
queryRecord<string, any>{}异步查询条件
showPaginationbooleantrue是否显示分页
showActionsbooleantrue是否显示操作列
maxVisibleActionsnumber—已废弃兼容属性
actionColumnWidthnumber—操作列宽配置
actionColumnTitlestring''操作列标题
actionsTableEntityActionName[]['edit', 'delete']内置操作
pushActionsTableEntityPushAction[][]追加操作
rowDraggablebooleanfalse是否可拖动排序
rowDragHandlestring—拖动把手选择器
rowDragDisabled(row) => boolean—禁止拖动判断
resizablebooleantrue是否可调整列宽
minColumnWidthnumber30最小列宽
showColumnSettingsbooleantrue是否显示列设置
permissionCodestring''权限编码前缀
importDialogTableEntityImportDialogConfig—内置导入弹窗配置

ColumnsItem 扩展属性 ​

除 Element Plus Column 属性外,还支持 width、dataKey、dataIndex、headerAlign、verticalAlign、type、dictCode、dictType、maxPreviewCount、cellProps、props、sortable、sortOrder 和 valueType。

事件:update:selectedKeys、selection-change、update:current_page、update:page、pageChange、update:per_page、change、refresh、handle-action、update:expandedRowKeys、expandedRowsChange、rowExpand、rowSort、importSuccess、importError。插槽:buttons、{dataKey}Col({dataKey} 为列字段名)、actionsCol。暴露 reload(page?)、getSelectedRows()、clearSelection()、getSelectedCount()、setSelectedKeys(keys)、openImport()。详见 TableEntity。

UserAvatarInfo ​

属性类型默认值说明
userIdnumber | string—用户 ID;传入后展示在线状态角标
namestring—展示名称
nickNamestring''昵称,优先于 name 展示
subtitlestring''副标题,优先于 deptName
deptNamestring''部门名称
srcstring—头像地址
genderUserAvatarGenderInput—性别;'male' / 'female' 时展示角标并着色
sexstring''性别编码,'0' 男 / '1' 女
sizenumber30头像尺寸
avatarRecord<string, unknown>—透传给 ElAvatar
drawerAvatarSizenumber64抽屉头像尺寸
agenumber | string—年龄
workYearsnumber | string—工龄
emailstring—邮箱(抽屉详情展示)
phonestring—手机号(抽屉详情展示)
departmentstring—部门(抽屉详情展示,未传时回退 deptName)
jobLevelstring—职级
enableDrawerbooleantrue是否允许打开详情抽屉
drawerTitlestring内置文案抽屉标题
drawerSizenumber | string'40%'抽屉宽度
drawerPropsRecord<string, unknown>—透传给 ElDrawer
drawerFieldsUserAvatarDrawerField[]—抽屉详情卡片字段配置,优先于全局 userAvatarDrawerFields,不传时为默认 8 字段
drawerVisiblebooleanfalse详情抽屉显隐模型

事件:update:drawerVisible。插槽:avatar、name、subtitle、default、drawer-avatar、drawer-name。暴露方法:openDrawer()、closeDrawer()。 UserAvatarDrawerField:{ key, label?, icon?, value? },用于配置抽屉详情卡片字段,也可通过 setupDisguise({ userAvatarDrawerFields }) 全局注入。