跳到主要内容

AutoComplete

容器属性

所有组件配置的第一层均支持容器属性

组件属性 componentsProps

NameTypeDefault是否支持 Variable PatternDescription
classNamestring✔️组件的 className
styleobject组件的 style
mapping{ value: string, label: string }{ value: 'value', label: 'label' }value 的映射关系,默认是 { value, label },如果提供了其他 key,会一并进行保存
options{ value: string | number | boolean, label: string }可选项
dataSource{ token: string, pbcToken: string, listUrl: string }数据源
dataUrlConditionalListOrSinglePropertyPropType(string)通过 dataUrl 获取数据。
dataUrlResolveMode'strict' | 'loose' | 'smart''strict'控制 dataUrl:variable 变量解析失败时的行为。strict:任何变量失败都不发请求;loose:失败变量置空,照常发请求;smart:path 部分变量失败不发请求,query 部分变量失败则移除该参数后继续发请求。
dataFiltersConditionalListPropertyPropType(DataFilters)✔️请求数据源隐藏的固定 filter 条件,无法通过界面进行改变
sortModelArray<SortModel>数据的排序方式
dataResponseKeyPathstring'results'取 response data 里的某一个子数据来作为结果。
transformDataResponsestring转换取到的数据,使用 eval 表达式,this 指向获取到的数据。
translateDataResponsebooltrue是否需要翻译请求结果
debounceTimenumber200请求数据的 debounce time,会触发 leading。
defaultValueobject数据源的默认数据,会和 api 请求到的数据进行 merge。如果 api 请求返回的是数组,则和数组的每一项进行 merge。如果 api 请求返回的是个对象,则和此对象进行 merge。
httpMethod'get' | 'post''get'数据请求的 http 方法。
selectColIdArray<string>加载的数据字段,不配置则加载所有字段。
needCountboolfalse是否需要查询总数 (当为 false 的时候表单 list 接口依然会返回 count,只是此时的 count 永远等于返回数据的长度)
searchTextColIdsArray<string>[mapping.label]指定模糊搜索的字段,不指定则搜索 mapping.label
requireSearchToFetchboolfalse是否需要有搜索条件才发请求,没有搜索内容时不加载数据
alwaysFetchOnSearchboolfalse搜索条件变化时是否始终重新发请求,不使用客户端过滤
onSelectOption(option: object, value: string) => void当用户从下拉列表选中一个 option 时触发,传入完整的 option 对象和选中的 value
itemFieldobjectoption 的格式化功能,通过指定每个元素的 json schema 来实现,支持使用所有 form 的元素

所有其余 componentsProps 将会被传给组件根元素(AutoComplete)。

SortModel

NameTypeDefaultDescription
colIdstring排序字段 id
sort'asc' | 'desc''asc'生序或者降序排序
sortType'text' | 'number' | 'date''text'值按照什么类型进行排序

JS API

通过 formApi.getFieldApi() 获取的接口如下:

NameTypeDescription
nodeHTML Element组件的根 DOM 元素
getOptions() => array获取 AutoComplete 的所有可选项