В моей библиотеке Angular есть код, подобный приведенному ниже:
test.component. html:
<third-party-component #tpComponent></third-party-component>
<my-component [tp-component]="tpComponent"></my-component>
my-component.component.ts:
import { Component, Input, OnInit } from '@angular/core';
import { ThirdPartyComponent } from '@3rd/party-library';
@Component({
selector: 'my-component',
templateUrl: './my-component.component.html',
styleUrls: ['./my-component.component.css']
})
export class MyComponent implements OnInit {
@Input('tp-component') tpComponent: ThirdPartyComponent;
ngOnInit() {
this.tpComponent.doSomething();
}
}
Я ищу способ (если он есть) для доступа к ElementRef
из экземпляра ThirdParyComponent
, переданного как свойство @Input
- к сожалению, я не могу изменить ThirdParyComponent
на выставить свой собственный ElementRef
.
PS: я знаю, что могу создать метод на MyComponent
для установки как экземпляра ThirdParyComponent
, так и его ElementRef
, но я бы хотел упростить это с помощью @Input
.
Есть ли способ добиться этого?