Browse Source

chore: update form type (#2724)

* chore: update form type

* fix: form-item name type
pull/2725/head^2
言肆 4 years ago committed by GitHub
parent
commit
13b01d7a70
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 133
      types/form/form-item.d.ts
  2. 18
      types/form/form.d.ts

133
types/form/form-item.d.ts vendored

@ -10,66 +10,91 @@ export declare type InternalNamePath = (string | number)[];
export declare type NamePath = string | number | InternalNamePath; export declare type NamePath = string | number | InternalNamePath;
export declare class FormItem extends AntdComponent { export declare class FormItem extends AntdComponent {
/** $props: {
* Used with label, whether to display : after label text. /**
* @default true * Used with label, whether to display : after label text.
* @type boolean * @default true
*/ * @type boolean
colon?: boolean; */
colon?: boolean;
/** /**
* The extra prompt message. It is similar to help. Usage example: to display error message and prompt message at the same time. * The extra prompt message. It is similar to help. Usage example: to display error message and prompt message at the same time.
* @type any (string | slot) * @type any (string | slot)
*/ */
extra?: any; extra?: string | VNodeChild | JSX.Element;
/** /**
* Used with validateStatus, this option specifies the validation status icon. Recommended to be used only with Input. * Used with validateStatus, this option specifies the validation status icon. Recommended to be used only with Input.
* @default false * @default false
* @type boolean * @type boolean
*/ */
hasFeedback?: boolean; hasFeedback?: boolean;
/** /**
* The prompt message. If not provided, the prompt message will be generated by the validation rule. * The prompt message. If not provided, the prompt message will be generated by the validation rule.
* @type any (string | slot) * @type any (string | slot)
*/ */
help?: string | VNodeChild | JSX.Element; help?: string | VNodeChild | JSX.Element;
/** /**
* Label test * Label test
* @type any (string | slot) * @type any (string | slot)
*/ */
label: string | VNodeChild | JSX.Element; label?: string | VNodeChild | JSX.Element;
/** /**
* The layout of label. You can set span offset to something like {span: 3, offset: 12} or sm: {span: 3, offset: 12} same as with <Col> * The layout of label. You can set span offset to something like {span: 3, offset: 12} or sm: {span: 3, offset: 12} same as with <Col>
* @type Col * @type Col
*/ */
labelCol: Col; labelCol?: Col;
/** /**
* Whether provided or not, it will be generated by the validation rule. * Whether provided or not, it will be generated by the validation rule.
* @default false * @default false
* @type boolean * @type boolean
*/ */
required: boolean; required?: boolean;
/** /**
* The validation status. If not provided, it will be generated by validation rule. options: 'success' 'warning' 'error' 'validating' * The validation status. If not provided, it will be generated by validation rule. options: 'success' 'warning' 'error' 'validating'
* @type string * @type string
*/ */
validateStatus: '' | 'success' | 'warning' | 'error' | 'validating'; validateStatus?: '' | 'success' | 'warning' | 'error' | 'validating';
/** /**
* The layout for input controls, same as labelCol * The layout for input controls, same as labelCol
* @type Col * @type Col
*/ */
wrapperCol: Col; wrapperCol?: Col;
labelAlign: 'left' | 'right'; /**
name?: InternalNamePath; * Set sub label htmlFor.
rules: object | object[]; */
autoLink: boolean; htmlFor?: string;
validateFirst?: boolean; /**
validateTrigger?: string | string[] | false; * text align of label
*/
labelAlign?: 'left' | 'right';
/**
* a key of model. In the use of validate and resetFields method, the attribute is required
*/
name?: NamePath;
/**
* validation rules of form
*/
rules?: object | object[];
/**
* Whether to automatically associate form fields. In most cases, you can use automatic association.
* If the conditions for automatic association are not met, you can manually associate them. See the notes below.
*/
autoLink?: boolean;
/**
* Whether stop validate on first rule of error for this field.
*/
validateFirst?: boolean;
/**
* When to validate the value of children node
*/
validateTrigger?: string | string[] | false;
};
} }

18
types/form/form.d.ts vendored

@ -5,7 +5,6 @@
import { AntdComponent } from '../component'; import { AntdComponent } from '../component';
import { Col } from '../grid/col'; import { Col } from '../grid/col';
import { FormItem } from './form-item'; import { FormItem } from './form-item';
export { Options as ScrollOptions } from 'scroll-into-view-if-needed';
export declare type InternalNamePath = (string | number)[]; export declare type InternalNamePath = (string | number)[];
export declare type NamePath = string | number | InternalNamePath; export declare type NamePath = string | number | InternalNamePath;
@ -232,8 +231,21 @@ export declare class Form extends AntdComponent {
scrollToFirstError?: boolean; scrollToFirstError?: boolean;
validateTrigger?: string | string[] | false; validateTrigger?: string | string[] | false;
onFinish?: (values: object) => void; /**
onFinishFailed?: (errorInfo: ValidateErrorEntity) => void; * Defines a function will be called if form data validation.
* @param e
*/
onSubmit?: (e?: Event) => void;
/**
* Trigger after submitting the form and verifying data successfully
* @param values
*/
onFinish?: (values?: object) => void;
/**
* Trigger after submitting the form and verifying data failed
* @param errorInfo
*/
onFinishFailed?: (errorInfo?: ValidateErrorEntity) => void;
}; };
/** /**
* clear validation message for certain fields. * clear validation message for certain fields.

Loading…
Cancel
Save