Получение переменной шаблона вложенного компонента
Добрый день, Моя проблема заключается в том, что я не могу считать значение переменной шаблона из дочернего компонента.
Задача стоит в том, чтобы вызывать контекстное меню, которое находится в вложенном кастомном компоненте. Компонент меню в компоненте reusable-menu Шаблон <mat-menu #dynamicMenu="matMenu"> <button *ngFor="let incomeItem of incomeData; let i = index" (click)="onSelectMenu(incomeItem, i)" mat-menu-item >{{incomeItem.name + i}} </button> </mat-menu> Класс export class ReusableMenuComponent implements OnInit { @Output() selectedItem = new EventEmitter(); @Input() incomeData: any[] = []; constructor() { } ngOnInit() {} onSelectMenu(item: any, indx: number) { console.log(item); } Компонент, в котором вызывается меню. <td mat-cell *matCellDef="let item" [matMenuTriggerFor]="dynamicMenu" (click)="onContextMenu($event, item)" > bla bla bla </td> <reusable-menu [incomeData]="leadersTypeList" ></reusable-menu> Каким образом я могу вытащить переменную dynamicMenu, которая находится в компоненте reusable-menu, чтобы использовать ее в качестве ссылки из родительского компонента? |
shtangen,
в классе ReusableMenuComponent делаешь @ViewChild('dynamicMenu', { static: true }) dynamicMenu: MatMenu; и в классе компонента, который вызывает меню @ViewChild(ReusableMenuComponent, { static: true }) reusableMenuCmp: ReusableMenuComponent ну и далее обращаешься к dynamicMenu как this.reusableMenuCmp.dynamicMenu |
Часовой пояс GMT +3, время: 15:08. |