我正在尝试将 SweetAlert2 与 Vue3(组合 API)一起使用。使用以下代码,警报不会等待单击其按钮:
onBeforeMount(async() => {
Swal.fire('test message');
initialiseArrays();
await getRides();
});
如果我删除
async
,
onBeforeMount(() => {
Swal.fire('test message');
initialiseArrays();
//await getRides();
});
或将
async
添加到“Swal”调用中,它按预期工作:
onBeforeMount(async() => {
async Swal.fire('test message');
initialiseArrays();
await getRides();
});
函数
getRides
等待来自服务器的数据并填充一些列表。我实际上不需要在 Swal
中使用 onBeforeMount()
,但它将在 getRides
内部更深入地使用,除非我在每次使用 await
时添加 Swal
,否则它不会起作用。但这意味着几乎要实现我的代码的每个功能async
- 这不可能是正确的!
我尝试将部分
getRides
代码移至 onMounted
钩子中,但这是在数据完全加载之前调用的,因此会导致复杂化。不过,除非没有其他解决方案,否则我会继续使用此方法。