多个if判断其中有的if判断中有this.$dialog .confirm({})如何先执行完this.$dialog .confirm({})再判断其他if条件
时间: 2023-08-12 15:36:09 浏览: 36
你可以将多个 `if` 判断封装成一个函数,并使用 `async/await` 或者 `Promise` 来等待对话框的返回结果,然后再执行其他 `if` 判断。例如:
```
async function handleDialogAndIf() {
const result = await this.$dialog.confirm({
title: '确认',
message: '确定要执行该操作吗?'
});
if (result) {
// 用户点击了确认按钮
// 执行其他操作
if (condition1) {
// ...
} else if (condition2) {
// ...
} else {
// ...
}
} else {
// 用户点击了取消按钮或者关闭了对话框
// 不执行其他操作
}
}
```
在上面的代码中,使用 `async/await` 等待对话框的返回结果,然后根据返回结果来执行其他 `if` 判断。如果用户点击了确认按钮,则会先执行其他操作,然后再根据条件执行不同的 `if` 判断。如果用户点击了取消按钮或者关闭了对话框,则不执行其他操作。
如果不想使用 `async/await`,也可以使用 `Promise` 来实现。例如:
```
function handleDialogAndIf() {
this.$dialog.confirm({
title: '确认',
message: '确定要执行该操作吗?'
}).then((result) => {
if (result) {
// 用户点击了确认按钮
// 执行其他操作
if (condition1) {
// ...
} else if (condition2) {
// ...
} else {
// ...
}
} else {
// 用户点击了取消按钮或者关闭了对话框
// 不执行其他操作
}
});
}
```
在上面的代码中,使用 `Promise` 来等待对话框的返回结果,然后根据返回结果来执行其他 `if` 判断。如果用户点击了确认按钮,则会先执行其他操作,然后再根据条件执行不同的 `if` 判断。如果用户点击了取消按钮或者关闭了对话框,则不执行其他操作。