update: 使用lock+try/catch

This commit is contained in:
dap 2025-04-05 13:38:09 +08:00
parent 26587ac09a
commit 88b3208afb

View File

@ -40,7 +40,8 @@ const [BasicModal, modalApi] = useVbenModal({
if (!isOpen) { if (!isOpen) {
return null; return null;
} }
modalApi.modalLoading(true); try {
modalApi.lock(true);
const { id } = modalApi.getData() as { id?: number | string }; const { id } = modalApi.getData() as { id?: number | string };
isUpdate.value = !!id; isUpdate.value = !!id;
@ -50,14 +51,17 @@ const [BasicModal, modalApi] = useVbenModal({
await formApi.setValues(record); await formApi.setValues(record);
} }
await updateInitialized(); await updateInitialized();
} catch (error) {
modalApi.modalLoading(false); console.error(error);
} finally {
modalApi.lock(false);
}
}, },
}); });
async function handleConfirm() { async function handleConfirm() {
try { try {
modalApi.modalLoading(true); modalApi.lock(true);
const { valid } = await formApi.validate(); const { valid } = await formApi.validate();
if (!valid) { if (!valid) {
return; return;
@ -70,7 +74,7 @@ async function handleConfirm() {
} catch (error) { } catch (error) {
console.error(error); console.error(error);
} finally { } finally {
modalApi.modalLoading(false); modalApi.lock(false);
} }
} }