【问题标题】:How to pass data fetched from http, from a Mat-Dialog Component to a Parent component in angular 6?如何将从 http 获取的数据从 Mat-Dialog 组件传递到 Angular 6 中的父组件?
【发布时间】:2019-05-31 19:24:18
【问题描述】:
实际上我有一个组件打字稿文件,其中包含两个类,一个用于普通组件,另一个用于 mat-dialog,
我从 http 获取数据,但我想传递给父组件。
我想将this.api.filterHotels(this.filterForm.value); 的结果发送到父组件,如何?因为我没有在 html 文件中的任何地方使用<Mob-filter-dialog> 标签。
【问题讨论】:
标签:
javascript
angular
typescript
angular-material
【解决方案1】:
Mat Dialog 有特定用途,不能与 HTML 标记一起使用。
使用提供的注射器。您可以通过接受一个参数的 dialog.close() 方法传递数据。然后使用 afterClosed observable 获取该数据。
这是mat-dialog官方文档的一段:
dialogRef.afterClosed().subscribe(result => {
console.log(`Dialog result: ${result}`); // Pizza!
});
dialogRef.close('Pizza!');
祝你好运,一开始并不容易,但文档解释得很好