NG0303:无法绑定到 'ngbTooltip',因为它不是 'button' 的已知 属性

NG0303: Can't bind to 'ngbTooltip' since it isn't a known property of 'button'

ERROR: 'NG0303: Can't bind to 'ngbTooltip' since it isn't a known property of 'button'.'

当我 运行 在本地测试我的 Angular 12 项目时,我得到这个错误,在所有使用 ngbTooltip 的 .spec 文件中我使用 CUSTOM_ELEMENT_SCHEMA,无法跟踪发生错误的线路。 值得注意的是 ng serve 时不存在错误,而 ng test 时出现错误。 告诉我如何解决这个问题,我尝试在应用程序模块中使用 CUSTOM_ELEMENT_SCHEMA,但没有帮助。

Console output Console output 2

尝试将 NgbModule 添加到 TestBed.configureTestingModule({ 中的 imports 数组。

TestBed.configureTestingModule({
  imports: [NgbModule],
...

如果您不想导入 NgbModule 或者它会导致您的单元测试出现问题,您可以模拟指令并提供模拟。

@Directive({
  selector: '[ngbTooltip]'
})
class MockNgbTooltip {}
...
TestBed.configureTestingModule({
  // add the mock to the declarations array
  declarations: [MockNgbTooltip],