Angular中如何将Filter组件的变量传入Details组件的方法?
解决方案
要把Filter组件里的Actualfilter值传递给Details组件的populateTable方法,只需两步修改:
1. 在Filter组件中传递参数给EventEmitter
修改Filter组件的emitItemsToFilter方法,把Actualfilter作为参数传入emit()方法:
@Component({ selector: 'app-modal-filter', }) export class ModalFilterComponent { @Output() applyFilter = new EventEmitter<any>(); emitItemsToFilter(): void { let Actualfilter = [...this.selectedMenuItems][0]; // 将Actualfilter作为参数传递出去 this.applyFilter.emit(Actualfilter); } }
2. 在Details组件模板中接收参数
在Details组件的模板里,用$event接收EventEmitter传递过来的Actualfilter值,再传给populateTable:
<app-modal-filter (applyFilter)="populateTable(true, $event)"></app-modal-filter>
点击Filter组件的apply按钮时,Actualfilter的值就会被传递到Details组件的populateTable方法中作为第二个参数使用。
内容的提问来源于stack exchange,提问作者KeyserSoze_AN
相关产品推荐
相关产品推荐

