我正在使用模态,并且想在关闭模态后调用函数。
我尝试了onDidDismiss()
方法,但显示错误
async openModal() {
const modal = await this.modal.create({ component: UploadPage });
modal.onDidDismiss(() => {
this.getData();
});
return await modal.present();
}
getData() {
......
}
这样,我得到了一个错误"Expected 0 arguments, but got 1."
答案 0 :(得分:2)
根据正式文件:
const modal = await modalController.create({...});
const { data } = await modal.onDidDismiss();
console.log(data);
请参阅官方文档link
答案 1 :(得分:1)
onDidDismiss()
返回Promise<OverlayEventDetail<any>>
。
尝试如下。
const modal = await modalController.create({ component: UploadPage });
const { data } = await modal.onDidDismiss();
if (data) {
this.getData();
}
答案 2 :(得分:1)
正如其他答案所述,现在onDidDismiss()也返回一个promise。因此,您可以遵循文档如何建议您捕获数据或执行类似操作,这基本上只是另一种语法:
async openModal() {
const modal = await this.modal.create({ component: UploadPage });
modal.onDidDismiss().then((data) => {
console.log(data)
});
return await modal.present();
}
实际数据将在data.data内部。