refactor: clean code

This commit is contained in:
Fu Diwei
2025-01-05 17:19:57 +08:00
parent dfc192cb68
commit e4c51aece4
18 changed files with 169 additions and 148 deletions

View File

@@ -46,7 +46,7 @@ const DrawerForm = <T extends NonNullable<unknown> = any>({
trigger: "onOpenChange",
});
const triggerDom = useTriggerElement(trigger, { onClick: () => setOpen(true) });
const triggerEl = useTriggerElement(trigger, { onClick: () => setOpen(true) });
const {
form: formInst,
@@ -66,7 +66,7 @@ const DrawerForm = <T extends NonNullable<unknown> = any>({
},
});
const mergedFormProps = {
preserve: drawerProps?.destroyOnClose ? false : undefined,
clearOnDestroy: drawerProps?.destroyOnClose ? true : undefined,
...formProps,
...props,
};
@@ -86,11 +86,18 @@ const DrawerForm = <T extends NonNullable<unknown> = any>({
return (
<>
{triggerDom}
{triggerEl}
<Drawer
afterOpenChange={(open) => {
if (!open && !mergedFormProps.preserve) {
formInst.resetFields();
}
drawerProps?.afterOpenChange?.(open);
}}
footer={
<Space>
<Space className="w-full justify-end">
<Button {...cancelButtonProps} onClick={handleCancelClick}>
{cancelText || t("common.button.cancel")}
</Button>