feat: await validate
This commit is contained in:
@@ -37,7 +37,7 @@ const emits = defineEmits<{
|
|||||||
|
|
||||||
async function handleSave() {
|
async function handleSave() {
|
||||||
const mode = props.updateMode ? 'update' : 'create';
|
const mode = props.updateMode ? 'update' : 'create';
|
||||||
const result = props.validate(createItem.value as T, mode);
|
const result = await props.validate(createItem.value as T, mode);
|
||||||
if (result.status === 'error') {
|
if (result.status === 'error') {
|
||||||
errorStore.summon(result.message);
|
errorStore.summon(result.message);
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -1,3 +1,5 @@
|
|||||||
import type { IEntity } from "./entity.type";
|
import type { IEntity } from "./entity.type";
|
||||||
|
|
||||||
export type Validate<T extends IEntity> = (data: T, mode: "update" | "create") => { status: "error" | "success", message?: string }
|
export type ValidateResult = { status: "error" | "success", message?: string }
|
||||||
|
|
||||||
|
export type Validate<T extends IEntity> = (data: T, mode: "update" | "create") => ValidateResult | Promise<ValidateResult>
|
||||||
Reference in New Issue
Block a user