我正在使用模态,并希望在>"失去模式"后调用功能。
我尝试了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."
onDidDismiss()
返回 Promise<OverlayEventDetail<any>>
。
尝试如下。
const modal = await modalController.create({ component: UploadPage });
const { data } = await modal.onDidDismiss();
if (data) {
this.getData();
}
正如其他答案所述,现在ondiddismiss((也返回承诺。因此,您可以关注文档建议您捕获数据或执行类似的事情,这基本上只是另一种语法:
async openModal() {
const modal = await this.modal.create({ component: UploadPage });
modal.onDidDismiss().then((data) => {
console.log(data)
});
return await modal.present();
}
实际数据将在data.data中。
根据官方文档:
const modal = await modalController.create({...});
const { data } = await modal.onDidDismiss();
console.log(data);
请参阅官方文档链接