J'ai une erreur dans mon matériel angulaire:
compiler.js:466 Uncaught Error: Template parse errors:
'mat-label' is not a known element:
1. If 'mat-label' is an Angular component, then verify that it is part of this module.
2. If 'mat-label' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message. ("
</mat-form-field>
<mat-form-field>
[ERROR ->]<mat-label>Both a label and a placeholder</mat-label>
<input matInput placeholder="Simple"):
Question:
L'étiquette de matériau est sous MatFormFieldModule Voici le lien
Maintenant, quelle est la cause possible du problème qui explique pourquoi Mat-Label est inconnu du matériau angulaire.
Voici le HTML
<mat-form-field> <mat-label>Both a label and a placeholder</mat-label> <input matInput placeholder="Simple placeholder"> </mat-form-field>
Améliorez @ angular/material en "5.2.0" et le problème disparaîtra.
Si vous avez plusieurs modules, assurez-vous que vous importez la MatFormFieldModule
dans chaque module. Il ne suffit pas de l'importer dans le module racine.
Par exemple, j'ai un CommonWidgetsModule qui contient des widgets courants (le mien) mais je n'avais importé que MatFormFieldModule
dans le fichier app.module.ts
.
// common-widgets.module.ts
@NgModule({
imports: [
CommonModule,
SharedModule,
RouterModule,
MatIconModule,
MatFormFieldModule
],
declarations: DECLARATIONS,
exports: DECLARATIONS
})
export class CommonWidgetsModule { }