iview/types/form.d.ts
2019-09-21 14:09:13 +08:00

100 lines
2.3 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 Form extends Vue {
/**
* 表单数据对象
*/
model?: object;
/**
* 表单验证规则,具体配置查看 async-validator
*/
rules?: object;
/**
* 是否开启行内表单模式
* @default false
*/
inline?: boolean;
/**
* 表单域标签的位置,可选值为 left、right、top
* @default right
*/
'label-position'?: 'left'|'right'|'top';
/**
* 表单域标签的宽度,所有的 FormItem 都会继承 Form 组件的 label-width 的值
*/
'label-width'?: number;
/**
* 是否显示校验错误信息
* @default true
*/
'show-message'?: boolean;
/**
* 对整个表单进行校验,参数为检验完的回调,会返回一个 Boolean 表示成功与失败
*/
validate(callback?: (valid?: boolean) => void): Promise<boolean>;
/**
* 对部分表单字段进行校验的方法参数1为需校验的 prop参数2为检验完回调返回错误信息
*/
validateField(prop?: string, callback?: (valid?: boolean) => void): void;
/**
* 对整个表单进行重置,将所有字段值重置为空并移除校验结果
*/
resetFields(): void;
}
export declare class FormItem extends Vue {
/**
* 对应表单域 model 里的字段
*/
prop?: string;
/**
* 标签文本
*/
label?: string;
/**
* 表单域标签的的宽度
*/
'label-width'?: number;
/**
* 指定原生的 label 标签的 for 属性,配合控件的 element-id 属性,可以点击 label 时聚焦控件。
*/
'label-for'?: string;
/**
* 是否必填,如不设置,则会根据校验规则自动生成
*/
required?: boolean;
/**
* 表单验证规则
*/
rules?: object | Array<any>;
/**
* 表单域验证错误信息, 设置该值会使表单验证状态变为error并显示该错误信息
*/
error?: string;
/**
* 是否显示校验错误信息
* @default true
*/
'show-message'?: boolean;
/**
* slot插槽对象
*/
$slots: {
/**
* 内容
*/
'': VNode[];
/**
* label 内容
*/
label: VNode[];
};
}