Я пытаюсь передать данные из родительского компонента в дочерний компонент, однако у меня возникла проблема с моей таблицей ng2-smart-table, которая мешает излучению. В моем родительском компоненте я использую ng2-smart-table, который использует userRowSelect (стандартная функция), когда я выбираю строку в таблице, я получаю все данные из этой строки. Данные из этой строки я хочу передать своему дочернему компоненту. Я пробовал использовать общий сервис, ввод и отправку, ни один из них пока не работал. Ниже приведены фрагменты кода двух компонентов. Есть предложения, что делать?
Родительский HTML:
<ng2-smart-table [settings]="settings" [source]="data" (userRowSelect)="onRowSelect($event)"></ng2-smart-table>
Родительский компонент:
@Output() passDataToViewPdf: EventEmitter<any> = new EventEmitter();
ngOnInit() {
this.reportService.getReportsTemplates().subscribe(response => this.data = response);
}
onRowSelect(event): void {
this.passDataToViewPdf.next(event);
this.router.navigate(['/report-view-pdf', localStorage.getItem('siteId')]);
}
Дочерний компонент:
@Input() template;
public handleEvent(event) {
// get data from passDataToViewPdf emitter
}
ngOnInit() { this.template = // get data from handleEvent}