Jest.js 无法绑定到“matMenuTriggerFor”,因为它不是“button”的已知属性

5gfr0r5j  于 12个月前  发布在  Jest
关注(0)|答案(8)|浏览(143)

当我尝试测试一个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块中导入了所有必需的材质依赖项,我还尝试将按钮的属性从matMenuTriggerFor更改为mat-menu-trigger-for。没成功
请告诉我如何修改这个测试。

iq3niunx

iq3niunx1#

将**MatMenuModule**导入您的功能模块或此组件所在的模块。

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

imports: [
  MatMenuModule
]
vpfxa7rd

vpfxa7rd2#

我认为您需要将MatMenuModule导入添加到您的app.module文件中。

ilmyapht

ilmyapht3#

随机的,但如果有人像我一样搜索:我正在导入一个自定义Angular 材质库,并在构建材质库之前构建消费库。当我首先构建材质库时,消费库即将看到MatMenuModule,错误就消失了。
我改变

"library:build": "npm run ng7-common:build" && npm run ng8-material:build

收件人:

"library:build": " npm run ng8-material:build && npm run ng7-common:build"
mkh04yzy

mkh04yzy4#

检查拼写我在单词trigger中有一个g,导致我出现此错误

[matMenuTrigerData] => [matMenuTriggerData]
wlp8pajw

wlp8pajw5#

我得到了这个(和其他几个错误),因为我未能将组件添加到lib.module.ts文件中的declarations数组。

rqqzpn5f

rqqzpn5f6#

我在运行jest测试时遇到此错误。我不得不在TestBed.configureTestingModule的导入数组中添加MatMenuModule来解决这个错误。

dy1byipe

dy1byipe7#

如果在其他模块导入,则需要导出MatMenuModule。
在您的模块中,放置:
. exports:[MatMenuModule],.

oxosxuxt

oxosxuxt8#

从'@angular/platform-browser/animations'导入{ BrowserAnimationsModule,NoopAnimationsModule };

相关问题