@vrx-arco/pro-components
Version:
<p align="center"> <img src="https://vrx-arco.github.io/arco-design-pro/favicon.svg" width="200" height="250"> </p>
167 lines (166 loc) • 4.5 kB
text/typescript
import { PropType } from 'vue';
import { SlotsType } from 'vue';
import { type EditFormDialogConfirmOptions, EditFormDialogSlot } from './types';
/**
* 新增/编辑表单弹框
*/
export declare const EditFormDialog: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
/**
* 弹框类型
*/
type: {
type: PropType<"drawer" | "modal">;
default: string;
};
/**
* 根据是否有id,判断是否为编辑状态
*/
id: {
type: StringConstructor;
required: true;
};
/**
* 表单数据
*/
model: ObjectConstructor;
/**
* 标题
*/
title: StringConstructor;
/**
* 宽度
*/
width: (StringConstructor | NumberConstructor)[];
/**
* 表单验证规则
*/
rules: ObjectConstructor;
/**
* 是否禁用表单
*/
disabled: {
type: BooleanConstructor;
default: boolean;
};
/**
* 是否在弹框关闭时销毁整个表单
*/
unmountOnClose: {
type: BooleanConstructor;
default: boolean;
};
/**
* 初始化表单数据
*/
initModel: {
type: PropType<() => Record<string, any>>;
default: () => {};
};
/**
* 新增方法
*/
add: PropType<(model: Record<string, any>, options: EditFormDialogConfirmOptions) => Promise<any>>;
/**
* 编辑方法
*/
edit: PropType<(model: Record<string, any>, options: EditFormDialogConfirmOptions) => Promise<any>>;
/**
* 自定义新增编辑时标题的前缀 ['新增', '编辑']
*/
prefix: {
type: PropType<[string, string]>;
default: () => string[];
};
/**
* 提交方法
*/
onConfirm: PropType<(model: Record<string, any>, options: EditFormDialogConfirmOptions) => Promise<any>>;
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("success" | "update:visible" | "update:model" | "confirm" | "close")[], "success" | "update:visible" | "update:model" | "confirm" | "close", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
/**
* 弹框类型
*/
type: {
type: PropType<"drawer" | "modal">;
default: string;
};
/**
* 根据是否有id,判断是否为编辑状态
*/
id: {
type: StringConstructor;
required: true;
};
/**
* 表单数据
*/
model: ObjectConstructor;
/**
* 标题
*/
title: StringConstructor;
/**
* 宽度
*/
width: (StringConstructor | NumberConstructor)[];
/**
* 表单验证规则
*/
rules: ObjectConstructor;
/**
* 是否禁用表单
*/
disabled: {
type: BooleanConstructor;
default: boolean;
};
/**
* 是否在弹框关闭时销毁整个表单
*/
unmountOnClose: {
type: BooleanConstructor;
default: boolean;
};
/**
* 初始化表单数据
*/
initModel: {
type: PropType<() => Record<string, any>>;
default: () => {};
};
/**
* 新增方法
*/
add: PropType<(model: Record<string, any>, options: EditFormDialogConfirmOptions) => Promise<any>>;
/**
* 编辑方法
*/
edit: PropType<(model: Record<string, any>, options: EditFormDialogConfirmOptions) => Promise<any>>;
/**
* 自定义新增编辑时标题的前缀 ['新增', '编辑']
*/
prefix: {
type: PropType<[string, string]>;
default: () => string[];
};
/**
* 提交方法
*/
onConfirm: PropType<(model: Record<string, any>, options: EditFormDialogConfirmOptions) => Promise<any>>;
}>> & Readonly<{
onConfirm?: ((...args: any[]) => any) | undefined;
onSuccess?: ((...args: any[]) => any) | undefined;
"onUpdate:visible"?: ((...args: any[]) => any) | undefined;
"onUpdate:model"?: ((...args: any[]) => any) | undefined;
onClose?: ((...args: any[]) => any) | undefined;
}>, {
type: "drawer" | "modal";
disabled: boolean;
unmountOnClose: boolean;
initModel: () => Record<string, any>;
prefix: [string, string];
}, SlotsType<{
default: EditFormDialogSlot;
}>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export interface EditFormDialogInstance extends InstanceType<typeof EditFormDialog> {
open(value: any): void;
}