ci-plus
Version:
ci组件库
31 lines (30 loc) • 1.06 kB
text/typescript
import { Component as ComponentIns, h } from 'vue'
import { TableColumnInstance, ColumnCls } from 'element-plus'
import { AxiosRequestConfig } from 'axios';
export type Props<T> = Partial<Omit<T, `$${string}` | `_${string}` | '$' | '_'>>
export interface Scope<T> {
row: T,
$index: number,
column: ColumnCls<T>
}
export interface SelectColumn {
col: Props<TableColumnInstance>
scope?(props: any): string
component?: (createVNode: typeof h, data: Scope<any>) => ComponentIns
}
export interface SelectSuffix {
title?: string //弹出层标题
modelValue: string | string[] //下拉框value
columns: SelectColumn[] // 表格列配置
mul?: boolean, //多选
prop: { //下拉框字段
label: string
value: string
}
where?: { //弹出层打开需要展示Label的请求
[key: string]: string
}
axiosConfig: AxiosRequestConfig //Axios请求配置
isExist?: boolean, // 是否选中关闭,单选默认true,多选默认false
searchKey?: string // 模糊搜索字段,默认search
}