Article Directory
- Mainly use the beforeClose method to achieve the effect of loading
- beforeClose The callback before the MessageBox is closed, which will suspend the closing of the instance
function(action, instance, done)
1. action 的值为'confirm', 'cancel'或'close'。
2. instance 为 MessageBox 实例,可以通过它访问实例上的属性和方法。
3. done 用于关闭 MessageBox 实例。
- Concrete implementation: (
this.$confirm、this.$alert、 this.$prompt
the implementation method is the same)
this.$prompt('名称', '新建表单', {
confirmButtonText: '确定',
cancelButtonText: '取消',
beforeClose: async (action, ctx, close) => {
if (action !== 'confirm') {
close();
return;
}
ctx.confirmButtonLoading = true;
try {
await this.createApi(ctx.inputValue);
close();
} catch (error) {
}
ctx.confirmButtonLoading = false;
},
});
- Before implementation:
- After implementation: