el-plus-powerful-form
Version:
## [DOCS](https://peng-xiao-shuai.github.io/vite-vue-admin-docs/zh-CN/component_directive/component/powerful-form-doc.html)
99 lines (97 loc) • 3.23 kB
TypeScript
import { FormInstance } from 'element-plus';
import { ComponentPublicInstance, ComputedRef, PropType, Ref } from 'vue';
import { FormEventType, FormItem, PowerfulFormData, PowerfulFormPTHeaders, PowerfulFormProps, SetDataType } from '../../index';
/**
* form-view 组件 props
*/
export declare const formViewProps: {
formItems: {
type: PropType<PowerfulFormProps["formItems"]>;
default: () => never[];
};
extendTable: {
type: PropType<PowerfulFormProps["extendTable"]>;
default: boolean;
};
formDataDefault: {
type: PropType<PowerfulFormProps["formDataDefault"]>;
default: () => {};
};
disabled: {
type: PropType<PowerfulFormProps["disabled"]>;
default: boolean;
};
showType: {
type: PropType<PowerfulFormProps["showType"]>;
default: undefined;
};
property: {
type: PropType<PowerfulFormProps["property"]>;
default: () => {};
};
apis: {
type: PropType<PowerfulFormProps["apis"]>;
default: undefined;
};
showLabel: {
type: PropType<PowerfulFormProps["showLabel"]>;
default: boolean;
};
};
/**
* components Props
*/
export declare const componentProps: () => {
formItem: {
type: PropType<FormItem>;
default: () => {};
};
formData: {
type: PropType<PowerfulFormData["formData"]>;
default: () => {};
};
index: {
type: PropType<number>;
};
inline: {
type: PropType<boolean>;
default: boolean;
};
};
export declare const isProperty: <T, R>(e: T, property?: R | ((e: T) => R)) => R;
/**
* form-view 组件 数据
*/
export declare const useFormViewState: (props: PowerfulFormProps) => {
formViewData: PowerfulFormData;
formRenderItems: ComputedRef<FormItem[]>;
elFormRef: Ref<FormInstance | null, FormInstance | null>;
transformHeader: (headerLists: PowerfulFormPTHeaders[]) => void;
};
export declare const useFunction: (props: PowerfulFormProps, formData: PowerfulFormData["formData"], elFormRef: Ref<FormInstance | null>, transformHeader: (headerLists: PowerfulFormPTHeaders[]) => void) => {
submitForm: (params?: object, options?: {
successMessage?: string;
errorMessage?: string;
cb: (type: "success" | "error", res?: any) => void;
}) => import('element-plus').FormValidationResult;
resetForm: () => void;
refreshRender: (refName?: string, proxy?: ComponentPublicInstance) => void;
visibleFormTrigger: () => boolean;
bindAttr(formItem: FormItem, formData: PowerfulFormData["formData"], index: number): {
formItem: FormItem;
formData: PowerfulFormData["formData"];
index: number;
inline: boolean;
};
};
/**
* 对 components文件夹下组件内部事件处理
* @param {{ formData: PowerfulFormData['formData']; index: number; formItem: FormItem<T> }} props 事件携带的一个参数数据
*/
export declare const useEvent: <T extends FormEventType>(props: {
formData: PowerfulFormData["formData"];
formItem: FormItem;
index: number;
}) => {
event: (eventType: keyof NonNullable<SetDataType<T>["on"]>, ...arg: any) => void;
};