iview/types/select.d.ts

166 lines
No EOL
4.2 KiB
TypeScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// Type definitions for iview 3.3.1
// Project: https://github.com/iview/iview
// Definitions by: yangdan
// Definitions: https://github.com/yangdan8/iview.git
import Vue, { VNode } from 'vue';
export declare class Select extends Vue {
/**
* 指定选中项目的 value 值,可以使用 v-model 双向绑定数据。
* 单选时只接受 String 或 Number多选时只接受 Array
* @default 空
*/
value?: string | number | string[] | number[];
/**
* 是否支持多选
* @default false
*/
multiple?: boolean;
/**
* 是否禁用
* @default false
*/
disabled?: boolean;
/**
* 是否可以清空选项,只在单选时有效
* @default false
*/
clearable?: boolean;
/**
* 是否支持搜索
* @default false
*/
filterable?: boolean;
/**
* 是否使用远程搜索
* @default false
*/
remote?: boolean;
/**
* 远程搜索的方法
*/
'remote-method'?: () => void;
/**
* 当前是否正在远程搜索
* @default false
*/
loading?: boolean;
/**
* 远程搜索中的文字提示
* @default 加载中
*/
'loading-text'?: string;
/**
* 仅在 remote 模式下,初始化时使用。因为仅通过 value 无法得知选项的 label需手动设置。默认值空
*/
label?: string | number | string[] | number[];
/**
* 选择框大小可选值为large、small、default或者不填
*/
size?: '' | 'large' | 'small' | 'default';
/**
* 选择框默认文字
* @default 请选择
*/
placeholder?: string;
/**
* 当下拉列表为空时显示的内容
* @default 无匹配数据
*/
'not-found-text'?: string;
/**
* 在返回选项时,是否将 label 和 value 一并返回,默认只返回
* @default false
*/
'label-in-value'?: boolean;
/**
* 弹窗的展开方向,可选值为 top、bottom、top-start、bottom-start、top-end、bottom-end
* @default bottom-start
*/
placement?: 'bottom' | 'top' | 'top-start' | 'bottom-start' | 'top-end' | 'bottom-end';
/**
* 是否将弹层放置于 body 内,在 Tabs、带有 fixed 的 Table 列内使用时,
* 建议添加此属性,它将不受父级样式影响,从而达到更好的效果
* @default false
*/
transfer?: boolean;
/**
* 给表单元素设置 id详见 Form 用法。
*/
'element-id'?: string;
/**
* 开启 transfer 时,给浮层添加额外的 class 名称
*/
'transfer-class-name'?: string;
/**
* 在 Select 内显示图标
*/
prefix?: string;
/**
* 多选时最多显示多少个 tag
*/
'max-tag-count'?: number;
/**
* 隐藏 tag 时显示的内容,参数是剩余项数量
*/
'max-tag-placeholder'?: () => any;
/**
* 选中的Option变化时触发默认返回 value如需返回 label详见 label-in-value 属性 当前选中项
*/
$emit(eventName: 'on-change'): this;
/**
* 搜索词改变时触发,query
*/
$emit(eventName: 'on-query-change', query: string): this;
/**
* 搜索词改变时触发,query
*/
$emit(eventName: 'on-clear'): this;
/**
* 搜索词改变时触发,query
*/
$emit(eventName: 'on-open-change', params: boolean): this;
/**
* 设置搜索词,为空时清空,仅在 filterable="true" 时有效
*/
setQuery(query: string): void;
/**
* 清空单选项,仅在 clearable="true" 时有效
*/
clearSingleSelect(): void;
/**
* slot插槽对象
*/
$slots: {
/**
* 自定义 Select 内头部图标
*/
prefix: VNode[];
};
}
export declare class Option extends Vue {
/**
* 选项值,默认根据此属性值进行筛选,必填
*/
value?: string | number;
/**
* 选项显示的内容,默认会读取 slot无 slot 时,优先读取该 label 值,
* 无 label 时,读取 value。当选中时选择器会显示 label 为已选文案。
* 大部分情况不需要配置此项,直接写入 slot 即可,在自定义选项时,该属性非常有用。
*/
label?: string;
/**
* 是否禁用当前项
* @default false
*/
disabled?: boolean;
}
export declare class OptionGroup extends Vue {
/**
* 分组的组名
* @default 空
*/
label?: string;
}