10个规格,10个失败 - 无法绑定到'routerLink',因为它不是'button'的已知属性?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (104)

我决定试验角的测试特性。我已经有了一个应用程序,所以我就运行了ng test它马上就有了我不明白的错误。这是我第一次进行角度测试。

这是输出:

AppComponent should create the app
Failed: Template parse errors:
Can't bind to 'routerLink' since it isn't a known property of 'button'. ("<mat-toolbar color="primary">
    <mat-toolbar-row>
        <button mat-button [ERROR ->][routerLink]="'/'">{{title}}</button>
        <button mat-button (click)="login()" *ngIf="!user">Logi"): ng:///DynamicTestModule/AppComponent.html@2:27
'mat-toolbar-row' is not a known element:
1. If 'mat-toolbar-row' is an Angular component, then verify that it is part of this module.
2. If 'mat-toolbar-row' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("<mat-toolbar color="primary">

下面是app.component.html:

<button mat-button [routerLink]="[ ... ]">{{title}}</button>

我绝对是进口的RouterModuleapp.module.ts:

@NgModule({
    declarations: [
        ...
    ],
    imports: [
        RouterModule.forRoot(routes),
        ...
    ],
    ...
})
export class AppModule {}
提问于
用户回答回答于

使用NO_ERRORS_SCHEMA但我不建议你这么做。这只在不使用导入的任何逻辑的情况下才能起作用。

describe('AppComponent', () => {
beforeEach(async(() => {
  TestBed.configureTestingModule({
    declarations: [
      AppComponent
    ],
    schemas: [NO_ERRORS_SCHEMA]
  }).compileComponents();
}));

扫码关注云+社区

领取腾讯云代金券