angular - 无法绑定(bind)到 'matMenuTriggerFor',因为它不是 'button' 的已知属性

标签 angular angular-material karma-jasmine jestjs

当我尝试测试 Angular 组件时出现以下错误:

运行 Jest 测试时出错:

Can't bind to 'matMenuTriggerFor' since it isn't a known property of 'button'.

这是我的 html:

<button mat-button [matMenuTriggerFor]="menu">Menu</button>
<mat-menu #menu="matMenu">
  <button mat-menu-item>Item 1</button>
  <button mat-menu-item>Item 2</button>
</mat-menu>`

我在我的 package.json 中使用 "@angular/material": "6.1.0",。 我还在 TestBed 下的 beforeAll block 中导入了所有必需的 Material 依赖项 我还尝试将按钮的属性从 matMenuTriggerFor 更改为 mat-menu-trigger-for。它没有用。

请建议我如何修复此测试。

最佳答案

在您的功能模块或该组件所在的模块中导入 MatMenuModule

 import { MatMenuModule} from '@angular/material/menu';

imports: [
  MatMenuModule
]

关于angular - 无法绑定(bind)到 'matMenuTriggerFor',因为它不是 'button' 的已知属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50883873/

相关文章:

javascript - Angular 2 智能表动态数据不加载

javascript - 如何使用 angular2-tree 插件获取检查的树结构值

javascript - 如何将 Angular Material 表与后端数据动态绑定(bind)?

unit-testing - Jasmine spy 不工作

angular - TypeError : jit_nodeValue_17(. ..) 不是函数

angular - 错误 TS2742 : The inferred type of 'username' cannot be named without a reference to '.../node_modules/@angular/forms/forms'

angular - Material 工具栏中的弹性布局

html - 如何在 mat-table angular 7 中突出显示新插入的行

javascript - Jasmine单元测试window.onbeforeunload

javascript - Angular 1/Jasmine - 测试函数的返回类型