在@ViewChild 变量中使用 spyOn 时出错

Error using spyOn in a @ViewChild variable

我有一个组件使用

@ViewChild(NgbDropdown) public dropdown: NgbDropdown;

this.dropdown.isOpen();

在我的规范文件中,我需要将 isOpen() 结果模拟为 true 但我似乎无法监视它。

出现此错误:

 Error: <spyOn> : could not find an object to spy upon for isOpen()
        Usage: spyOn(<object>, <methodName>)

提前致谢!

这跟 linter 有关系

这就是它应该被嘲笑的方式

component.dropdown  = jasmine.createSpyObj(['isOpen']);

(component.dropdown as SpyObj<NgbDropdown>).isOpen.and.returnValue(true);

谢谢!