如何通过父组件中的 id 访问位于 ng-template 中的子元素?

How to access a child element that is located inside ng-template by its id in a parent component?

这非常简单,我找不到任何适合我的解决方案,包括阅读 Angular 文档。

所以,我想通过子组件的 id 从其父组件访问子组件,因为我想在父组件的 Jasmine 单元测试中使用它。

问题是子组件在 ng-template 里面。

而且我没有提到它。我尝试了不同的解决方案,其中 none 个有效。

这是示例代码:
此 ng-template 位于父组件中:

<ng-template #templateName>
   <child-component id="child-component"></child-component>
</ng-template>

并且在父组件中:

@ViewChild('templateName') template;

父级如何通过id访问<child-component> </child-component>

任何帮助将不胜感激!
谢谢!

您可以使用类似的东西:

fixture.debugElement.query(By.css('#yourId').nativeElement;

或者你也有:

fixture.debugElement.query(By.directive(YourComponent)).nativeElement;