我检查过这些问题:
我已经按照本教程:
以前我使用过Angular Material,但为此它不会起作用:
compiler.js:1016未捕获错误:模板解析错误:'mat-button-toggle'不是已知元素:1。如果'mat-button-toggle'是Angular组件,则验证它是否是此模块的一部分。
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { TRANSLATION_PROVIDERS } from './translations';
import { TranslateService } from './services/translator.service';
import { AppComponent } from './app.component';
import { MatButtonModule, MatCheckboxModule, MatFormFieldModule, MatInputModule, MatRippleModule, MatDatepickerModule, MatNativeDateModule } from '@angular/material';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { FormsModule } from '@angular/forms';
import { ReactiveFormsModule } from '@angular/forms';
import { HttpClientModule } from '@angular/common/http';
@NgModule({
imports: [
BrowserModule,
FormsModule,
MatButtonModule,
MatCheckboxModule,
MatFormFieldModule,
MatInputModule,
MatRippleModule,
BrowserAnimationsModule,
MatDatepickerModule,
],
exports: [
BrowserModule,
FormsModule,
MatButtonModule,
MatCheckboxModule,
MatFormFieldModule,
MatInputModule,
MatRippleModule,
BrowserAnimationsModule,
MatDatepickerModule,
],
declarations: [AppComponent],
providers: [TRANSLATION_PROVIDERS, TranslateService],
bootstrap: [AppComponent]
})
export class AppModule { }
(这里我只想添加那些按钮,即使没有真正的功能)
....
<div>
<mat-button-toggle-group name="fontStyle" aria-label="Font Style">
<mat-button-toggle value="bold">Bold</mat-button-toggle>
<mat-button-toggle value="italic">Italic</mat-button-toggle>
<mat-button-toggle value="underline">Underline</mat-button-toggle>
</mat-button-toggle-group>
</div>
...
styles.css的
@import '~@angular/material/prebuilt-themes/deeppurple-amber.css';
body {
font-family: Roboto, Arial, sans-serif;
margin: 0;
}
.basic-container {
padding: 30px;
}
.version-info {
font-size: 8pt;
float: right;
}
html, body { height: 100%; }
body { margin: 0; font-family: 'Roboto', sans-serif; }
mat-button-toggle
作为MatButtonToggleModule
的一部分提供所以你也必须导入它。
在AppModule中为它添加一个import语句:
import {MatButtonToggleModule} from '@angular/material/button-toggle';
然后将它添加到imports
数组中,以便AppModule的模板可以理解mat-button-toggle
是什么。
另外,我不确定你为什么从AppModule导出这些模块。如果我们计划在其他模块中导入该模块,我们通常会从模块中导出任何内容。但由于这是AppModule,因此是你的RootModule,我认为你不会在任何其他模块中导入它。但情况可能并非如此。