'mat-toolbar' is not a known element - Angular 5
我创建了一个新项目,并且尝试添加
我在
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | import { NgModule } from '@angular/core'; import { MatButtonModule, MatMenuModule, MatIconModule, MatCardModule, MatSidenavModule, MatFormFieldModule, MatInputModule, MatTooltipModule, MatToolbarModule } from '@angular/material'; @NgModule({ imports: [ MatButtonModule, MatMenuModule, MatIconModule, MatCardModule, MatSidenavModule, MatFormFieldModule, MatInputModule, MatTooltipModule, MatToolbarModule, ], exports: [ MatButtonModule, MatMenuModule, MatIconModule, MatCardModule, MatSidenavModule, MatFormFieldModule, MatInputModule, MatTooltipModule, MatToolbarModule ] }) export class MaterialModule { } |
,并且我已将其导入到我的组件之一中:
1 | import { MaterialModule } from '../material.module'; |
此外,我在
中设置了角形材质
1 | <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> |
在我的
中
1 | @import '~@angular/material/prebuilt-themes/pink-bluegrey.css'; |
我知道它正在工作,因为我已经显示了
1 | <i class="material-icons">face |
但是当我尝试创建页脚时,它失败并显示以下消息:
Uncaught Error: Template parse errors:
'mat-toolbar' is not a known element:
1. If 'mat-toolbar' is an Angular component, then verify that it is part of this module.
2. If 'mat-toolbar' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message.
那是因为您必须将模块导入包含组件声明的模块,而不是组件本身:
1 2 3 4 5 6 7 8 9 10 11 12 | import { MaterialModule } from './material.module'; @NgModule({ imports: [ // ... MaterialModule ], declarations: [ MyCoolComponent, // ... ] }) |
P.S。使用材质图标的正确方法是使用
1 | <mat-icon>home</mat-icon> |
最佳方法
快速修复
1 | import {MatToolbarModule} from '@angular/material/toolbar'; |
在您的app.module.ts
中
然后在您的声明中声明MatToolbarModule []。
在这里适合我:https://stackblitz.com/edit/angular-w9ckf8
查看链接,查看是否缺少任何内容。