const emit = defineEmits(["changeHopid"]);
// 初始化所有医院
const initHop = async () => {
try {
// emit("changeHopid", 1);
const { code, data } = await getAllHosp();
if (code !== 200) return ElMessage.error("数据获取失败");
emit("changeHopid", data.data[0].id);
} catch (e) {
ElMessage.error("数据获取失败");
}
};
const emit = defineEmits(["changeHopid"]);
const initHop = async () => {
try {
const { code, data } = await getAllHosp();
if (code !== 200) {
return ElMessage.error("失败");
}
// await后面 赋值
const newData = data.data[0];
emit("changeHopid", newData.id);
} catch (e) {
ElMessage.error("失败");
}
};
try...catch...finally
【以下回答由 GPT 生成】
要在await后面成功进行赋值操作,你可以使用Promise.resolve()来包装emit方法,以确保在await后面进行赋值。以下是示例代码:
const emit = defineEmits(["changeHopid"]);
// 初始化所有医院
const initHop = async () => {
try {
const { code, data } = await getAllHosp();
if (code !== 200) return ElMessage.error("数据获取失败");
await Promise.resolve(emit("changeHopid", data.data[0].id));
} catch (e) {
ElMessage.error("数据获取失败");
}
};
通过使用Promise.resolve(),你可以将emit方法转换为一个Promise对象,并确保在await后面进行赋值操作。
【相关推荐】