我正在编写一个使用ngx-bootstrap工具提示属性指令(TooltipDirective)的组件的规范。我想调用工具提示的open方法来查看内容。但是当我尝试访问该指令时,我得到了我的组件。
const tooltip = fixture.debugElement.query(By.directive(TooltipDirective))
.componentInstance;
当我console.log(tooltip)
时,我得到了对被测组件的引用,而不是预期的tooltip指令。有没有办法访问属性指令?
答案 0 :(得分:2)
为了获得测试组件的属性指令,您必须使用构建它的injector
上的DebugElement
。以下是如何做到这一点:
const tooltip = debugElement.query(By.directive(TooltipDirective))
.injector.get(TooltipDirective);
您无法使用TestBed.get
访问此指令,因为它仅适用于子注入器。