vue3之子组件调用父组件异步请求,完了之后再同步执行下文

子组件,事件

const confirm = async () => {
  loading.value = true;
  emit("confirm", (res: any) => {
    if (res.code === 0) {
      ElMessage.success(res.message);
    } else {
      ElMessage.error(res.message);
    }
    loading.value = false;
    visible.value = false;
  });
};

父组件的emit事件,核心就是callback

const confirmDel = async (callback: (res: any) => void) => {
  try {
    const result = await delPool({
      id: 1
    });
    callback({
      code: 0,
      data: result,
      message: "操作成功"
    });
  } catch (error) {
    callback({
      code: 1,
      error: error,
      message: "操作失败"
    });
  }
};

 

posted @ 2025-08-06 09:00  影思密达ing  阅读(30)  评论(0)    收藏  举报