Вы можете прочитать дочерний компонент без переменной refrence, как это
@ViewChild(AudioComponent)
audio: AudioComponent;
Это даст вам экземпляр дочернего компонента - где вы можете получить доступ к методу
this.audio.someComponentFunction()
Ваш HTML
<ng-template #modal let-modal>
<app-audio></app-audio>
</ng-template>
Я думаю, это решит вашу проблему - Счастливое кодирование
Обновление:
Надеюсь, я нашел обходной путь для этой проблемы - если вы хотите запустить только одну функцию, вы можете использовать этот метод
Я только что добавил свойство с getter
и setter
и вызвал функцию, когда мы set
значение
@Input()
get triggerFunction(): boolean {
return this.runFuntion;
}
set triggerFunction(value: boolean) {
this.runFuntion = value;
this.someFunction();
}
Таким образом, это вызывает запуск функции каждый раз, когда появляется модель - упомянутое выше свойство принадлежит дочернему компоненту, который вложен в <ng-template>
, поэтому в итоге шаблон модели будет выглядеть так, как указано ниже:
<ng-template #modal let-modal>
<app-audio [triggerFunction]="true"></app-audio>
</ng-template>
Надеюсь, что это покажет обходной путь - спасибо