Skip to content

EySelect组件示例(推荐使用)

在日常业务中,我们经常会用到 Select,但原组件在某些场景下需要重复处理逻辑,缺少统一封装。

基于此,我在工作中对其进行了二次封装,实现了以下功能:

将这些常见场景抽离,封装成一个更易用的 Select 组件

TIP

若是需要使用api,请确保返回数据格式如下(total字段可在page中修改)

ts
{
    data:any[],
    total:number
}

API

Attributes

成员说明类型默认值
api异步请求数据的接口(data?: Record<string, any>) => Promise<any>-
valueSelect 组件接收的值string | number | array | objectnull
options下拉选项数组SelectProps['options'][]
elPropsa-select 组件的 propsPartial<SelectProps> & { style?: CSSProperties }{}
autoRequest是否在 mounted 时自动请求booleantrue
alwaysLoad每次点击都触发加载booleanfalse
scrollLoad下拉加载booleanfalse
handlerLoadFn拦截返回的值处理函数(res: any) => any[]-
page分页字段设置详细解析TPageundefined
extraParamsAPI 请求时额外携带的参数Record<string, any>{}

page

一个简单对象,阐述请求时page_no,page_size需要对应使用哪些字段,total_key为返回字段

ts
page={
    page_no_key?: string;
    page_size_key?: string;
    total_key?: string;
}

一个让开发效率增倍的组件库